Sha256: dc3e36b0a4b2038f9f13839023fa609b0aeef7e1c5cdbcc482f3ebc1a0495e01

Contents?: true

Size: 1.61 KB

Versions: 11

Compression:

Stored size: 1.61 KB

Contents

require 'test_helper'

module Vedeu

  module Menus

    describe DSL do

      let(:described)  { Vedeu::Menus::DSL }
      let(:instance)   { described.new(model) }
      let(:model)      { Vedeu::Menus::Menu.new(attributes) }
      let(:attributes) {
        {
          collection: collection,
          name:       menu_name,
        }
      }
      let(:collection) { [:sodium, :magnesium, :aluminium, :silicon] }
      let(:menu_name)  { 'elements' }

      describe '#item' do
        let(:_value) { :platinum }

        subject { instance.item(_value) }

        it { instance.must_respond_to(:item=) }

        context 'when items are provided' do
          it { subject.must_equal([:sodium,
                                    :magnesium,
                                    :aluminium,
                                    :silicon,
                                    :platinum]) }
        end
      end

      describe '#items' do
        let(:_value) { [] }

        subject { instance.items(_value) }

        it { instance.must_respond_to(:items=) }

        context 'when no items are provided' do
          it { subject.must_equal([]) }
        end

        context 'when items are provided' do
          let(:_value) { [:gold, :silver, :tin] }

          it { subject.must_equal(_value)}
        end
      end

      describe '#name' do
        let(:_value) { 'metals' }

        subject { instance.name(_value) }

        it { instance.must_respond_to(:name=) }

        it 'returns the name of the menu' do
          subject
          model.name.must_equal('metals')
        end
      end

    end # DSL

  end # Menus

end # Vedeu

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
vedeu-0.6.31 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.30 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.29 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.28 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.27 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.26 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.25 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.24 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.23 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.22 test/lib/vedeu/menus/dsl_test.rb
vedeu-0.6.21 test/lib/vedeu/menus/dsl_test.rb