Sha256: 60bdc542acd982db5f6f71e94386c392c51d2dbeee9c785b8fd6dbf82498e439

Contents?: true

Size: 940 Bytes

Versions: 1

Compression:

Stored size: 940 Bytes

Contents

require_relative '../../../test_helper'
require_relative '../../../../lib/vedeu/models/interface_collection'
require_relative '../../../../lib/vedeu/models/composition'

module Vedeu
  describe InterfaceCollection do
    describe '#coerce' do
      it 'returns a Array' do
        Composition.new.interfaces.must_be_instance_of(Array)
      end

      it 'returns an empty collection when there are no interfaces' do
        Composition.new.interfaces.must_equal([])
      end

      it 'returns a collection of Interface objects when there is a single interface' do
        skip
        Composition.new({ name: 'dummy' }).interfaces.first.must_be_instance_of(Interface)
      end

      it 'returns a collection of Interface objects when there are multiple interfaces' do
        Composition.new({ interfaces: [
          { name: 'dumb' },
          { name: 'dumber' }
        ]}).interfaces.size.must_equal(2)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vedeu-0.0.31 test/lib/vedeu/models/interface_collection_test.rb