Sha256: 73884affd4bc3f74f5e826eb591cb3862c43be6b2a77640c71943877b4bbafed

Contents?: true

Size: 1.1 KB

Versions: 8

Compression:

Stored size: 1.1 KB

Contents

require 'test_helper'

module Vedeu

  module Templating

    describe Preprocessor do

      let(:described) { Vedeu::Templating::Preprocessor }
      let(:instance)  { described.new(lines) }
      let(:lines)     {
        [
          "Some text here\n",
          "{{ colour(foreground: '#0f0') { 'Yay!' } }}\n",
          "More text here\n"
        ]
      }
      let(:expected) {
        [
          Vedeu::Stream.new(value: 'Some text here'),
          Vedeu::Stream.new(value: 'Yay!',
                            colour: Vedeu::Colour.coerce(foreground: '#0f0')),
          Vedeu::Stream.new(value: 'More text here')
        ]
      }

      describe '#initialize' do
        it { instance.must_be_instance_of(described) }
        it { instance.instance_variable_get('@lines').must_equal(lines) }
      end

      describe '.process' do
        subject { described.process(lines) }

        it { subject.must_equal(expected) }
      end

      describe '#process' do
        subject { instance.process }

        it { subject.must_equal(expected) }
      end

    end # Preprocessor

  end # Templating

end # Vedeu

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
vedeu-0.4.60 test/lib/vedeu/templating/preprocessor_test.rb
vedeu-0.4.59 test/lib/vedeu/templating/preprocessor_test.rb
vedeu-0.4.58 test/lib/vedeu/templating/preprocessor_test.rb
vedeu-0.4.57 test/lib/vedeu/templating/preprocessor_test.rb
vedeu-0.4.56 test/lib/vedeu/templating/preprocessor_test.rb
vedeu-0.4.55 test/lib/vedeu/templating/preprocessor_test.rb
vedeu-0.4.54 test/lib/vedeu/templating/preprocessor_test.rb
vedeu-0.4.53 test/lib/vedeu/templating/preprocessor_test.rb