Sha256: 9eaa41b50d7e5edbd2b110a097945533236089d4602a9b8b32938fe541e6f82e
Contents?: true
Size: 1.53 KB
Versions: 3
Compression:
Stored size: 1.53 KB
Contents
require_relative '../test_helper' class PinlessComponentMock def stop end end class SinglePinComponentMock def pin 1 end end class MultiPinComponentMock def pin {a: 1, b: 2} end end class SubcomponentsTest < Minitest::Test def connection @connection ||= ConnectionMock.new end def board @board ||= Denko::Board.new(connection) end def test_add_remove_pinless pinless = PinlessComponentMock.new board.add_component(pinless) assert_equal [pinless], board.components assert_empty board.single_pin_components board.remove_component(pinless) assert_empty board.components end def test_add_remove_single_pin single_pin = SinglePinComponentMock.new board.add_component(single_pin) test_hash = {1 => single_pin} assert_equal [single_pin], board.components assert_equal test_hash, board.single_pin_components board.remove_component(single_pin) assert_empty board.components refute board.single_pin_components[1] end def test_add_remove_multi_pin multi_pin = MultiPinComponentMock.new board.add_component(multi_pin) assert_equal [multi_pin], board.components assert_empty board.single_pin_components board.remove_component(multi_pin) assert_empty board.components end def test_calls_stop_on_remove pinless = PinlessComponentMock.new board.add_component(pinless) mock = MiniTest::Mock.new.expect(:call, nil) pinless.stub(:stop, mock) do board.remove_component(pinless) end mock.verify end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
denko-0.13.2 | test/behaviors/subcomponents_test.rb |
denko-0.13.1 | test/behaviors/subcomponents_test.rb |
denko-0.13.0 | test/behaviors/subcomponents_test.rb |