Sha256: e526c70d2d6097dc0731ebd2556816f804dbf84309fe34e0173271adf97cd942

Contents?: true

Size: 894 Bytes

Versions: 5

Compression:

Stored size: 894 Bytes

Contents

def render_template(source, context = nil, options = {})
  context ||= ::Liquid::Context.new
  context.exception_handler = ->(e) { true }
  ::Liquid::Template.parse(source, options).render(context)
end

def parse_template(source, options = nil)
  ::Liquid::Template.parse(source, options || {})
end

module Liquid
  class SimpleEventsListener
    def initialize
      ActiveSupport::Notifications.subscribe(/^steam\.parse\./) do |name, start, finish, id, payload|
        emit(name, payload)
      end
    end
    def emit(name, options = {})
      (@stack ||= []) << [name, options]
    end
    def event_names
      (@stack || []).map { |(name, _)| name }
    end
    def events
      @stack || []
    end
  end
end

def liquid_instance_double(doubled_class, stubs)
  instance_double(doubled_class, stubs).tap do |double|
    allow(double).to receive(:to_liquid).and_return(double)
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
locomotivecms_steam-1.0.0.pre.beta.2 spec/support/liquid.rb
locomotivecms_steam-1.0.0.pre.beta.1 spec/support/liquid.rb
locomotivecms_steam-1.0.0.pre.alpha.3 spec/support/liquid.rb
locomotivecms_steam-1.0.0.pre.alpha.2 spec/support/liquid.rb
locomotivecms_steam-1.0.0.pre.alpha.1 spec/support/liquid.rb