Sha256: ae181554cdef5113ce75205b2ecf7ff6e420a0b1383170f949f7a09496ae8886
Contents?: true
Size: 1.8 KB
Versions: 3
Compression:
Stored size: 1.8 KB
Contents
require_relative '../test_helper' class APIOneWireTest < Minitest::Test include TestPacker def connection @connection ||= ConnectionMock.new end def board @board ||= Denko::Board.new(connection) end def test_one_wire_reset board message = Denko::Message.encode command: 41, pin: 1, value: 255 mock = MiniTest::Mock.new.expect :call, nil, [message] connection.stub(:write, mock) do board.one_wire_reset(1, 255) end mock.verify end def test_one_wire_search board message = Denko::Message.encode command: 42, pin: 1, aux_message: pack(:uint64, 128, max:8) mock = MiniTest::Mock.new.expect :call, nil, [message] connection.stub(:write, mock) do board.one_wire_search(1, 128) end mock.verify end def test_one_wire_write board # Calculate length and parasite power properly. message1 = Denko::Message.encode command: 43, pin: 1, value: 0b10000000 | 3, aux_message: pack(:uint8, [1,2,3]) message2 = Denko::Message.encode command: 43, pin: 1, value: 4, aux_message: pack(:uint8, [1,2,3,4]) mock = MiniTest::Mock.new mock.expect :call, nil, [message1] mock.expect :call, nil, [message2] connection.stub(:write, mock) do board.one_wire_write(1, true, [1,2,3]) board.one_wire_write(1, nil, [1,2,3,4]) end mock.verify # Don't allow more than 127 bytes of data. assert_raises(ArgumentError) do too_big = Array.new(128).map { 42 } board.one_wire_write(1, true, too_big) end end def test_one_wire_read board message = Denko::Message.encode command: 44, pin: 1, value: 9 mock = MiniTest::Mock.new.expect :call, nil, [message] connection.stub(:write, mock) do board.one_wire_read(1, 9) end mock.verify end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
denko-0.13.2 | test/board/one_wire_test.rb |
denko-0.13.1 | test/board/one_wire_test.rb |
denko-0.13.0 | test/board/one_wire_test.rb |