@Override public boolean equals(Object obj) { if (obj instanceof BidibMessage) { BidibMessage other = (BidibMessage) obj; if (other.getType() == getType() && other.getNum() == getNum() && Arrays.equals(other.getAddr(), getAddr()) && Arrays.equals(other.getData(), getData())) { return true; } } return super.equals(obj); }
@Test public void receive4Test() throws IOException, ProtocolException { NodeRegistry nodeFactory = Mockito.mock(NodeRegistry.class); BidibNode bidibNode = Mockito.mock(BidibNode.class); MessageListener messageListener = Mockito.mock(MessageListener.class); SerialMessageReceiver receiver = new SerialMessageReceiver(nodeFactory); receiver.addMessageListener(messageListener); // set the receive queue byte[] rawmessage = { 0x08, 0x03, 0x00, 0x1E, (byte) 0xC6, 0x00, 0x07, 0x00, 0x00, 0x08, 0x03, 0x00, 0x1F, (byte) 0xC6, 0x00, 0x08, 0x00, 0x00, 0x08, 0x03, 0x00, 0x20, (byte) 0xC6, 0x00, 0x09, 0x00, 0x00, 0x08, 0x03, 0x00, 0x21, (byte) 0xC6, 0x00, 0x0A, 0x00, 0x00, 0x08, 0x03, 0x00, 0x22, (byte) 0xC6, 0x00, 0x0B, 0x00, 0x00, 0x08, 0x03, 0x00, 0x23, (byte) 0xC6, 0x00, 0x0C, 0x00, 0x00, 0x08, 0x03, 0x00, 0x24, (byte) 0xC6, 0x00, 0x0D, 0x00, 0x00, (byte) 0xF5, (byte) 0xFE }; byte[] message = new byte[] { 0x08, 0x03, 0x00, 0x17, (byte) 0xC6, 0x00, 0x00, 0x00, 0x00 }; final byte[] nodeAddress = new byte[] { 3 }; Mockito.when(nodeFactory.findNode(nodeAddress)).thenReturn(bidibNode); Mockito .when(bidibNode.getNextReceiveMsgNum(Mockito.any(BidibMessage.class))).thenReturn(Integer.valueOf(0x1E), Integer.valueOf(0x1F), Integer.valueOf(0x20), Integer.valueOf(0x21), Integer.valueOf(0x22), Integer.valueOf(0x23), Integer.valueOf(0x24)); receiver.receive(pack(rawmessage)); BidibMessage response = new BidibResponseFactory().create(message); // verify that message was signaled Mockito.verify(messageListener, Mockito.times(7)).lcConfigX(Mockito.eq(nodeAddress), Mockito.any()); Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_LC_CONFIGX)); }
Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_LC_CONFIGX));
@Test public void receive5Test() throws IOException, ProtocolException { NodeRegistry nodeFactory = Mockito.mock(NodeRegistry.class); BidibNode bidibNode = Mockito.mock(BidibNode.class); MessageListener messageListener = Mockito.mock(MessageListener.class); SerialMessageReceiver receiver = new SerialMessageReceiver(nodeFactory); receiver.addMessageListener(messageListener); // set the receive queue byte[] rawmessage = { 0x08, 0x03, 0x00, 0x25, (byte) 0xC6, 0x00, 0x0E, 0x00, 0x00, 0x08, 0x03, 0x00, 0x26, (byte) 0xC6, 0x00, 0x0F, 0x00, 0x00, (byte) 0xDA, (byte) 0xFE }; byte[] message = new byte[] { 0x08, 0x03, 0x00, 0x17, (byte) 0xC6, 0x00, 0x00, 0x00, 0x00 }; final byte[] nodeAddress = new byte[] { 3 }; Mockito.when(nodeFactory.findNode(nodeAddress)).thenReturn(bidibNode); Mockito .when(bidibNode.getNextReceiveMsgNum(Mockito.any(BidibMessage.class))) .thenReturn(Integer.valueOf(0x25), Integer.valueOf(0x26)); receiver.receive(pack(rawmessage)); BidibMessage response = new BidibResponseFactory().create(message); // verify that message was signaled Mockito.verify(messageListener, Mockito.times(2)).lcConfigX(Mockito.eq(nodeAddress), Mockito.any()); Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_LC_CONFIGX)); }
Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_LC_MACRO_PARA));
Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_ACCESSORY_PARA));
Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_LC_CONFIGX));
Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_LC_MACRO));
Assert.assertEquals(response.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_ACCESSORY_PARA));
Mockito.verify(receiveQueue, Mockito.times(1)).offer(response3); Assert.assertEquals(response0.getType(), ByteUtils.getLowByte(BidibLibrary.MSG_FEATURE));
int type = ByteUtils.getInt(result.getType()); switch (type) { case BidibLibrary.MSG_ACCESSORY_PARA: result = new AccessoryParaResponse(result.getAddr(), result.getNum(), result.getType(), result.getData()); break; case BidibLibrary.MSG_ACCESSORY_STATE: result = new AccessoryStateResponse(result.getAddr(), result.getNum(), result.getType(), result.getData()); break; case BidibLibrary.MSG_ACCESSORY_NOTIFY: result = new AccessoryNotifyResponse(result.getAddr(), result.getNum(), result.getType(), result.getData()); break; case BidibLibrary.MSG_BM_ADDRESS: result = new FeedbackAddressResponse(result.getAddr(), result.getNum(), result.getType(), result.getData()); break; case BidibLibrary.MSG_BM_CONFIDENCE: result = new FeedbackConfidenceResponse(result.getAddr(), result.getNum(), result.getType(), result.getData()); break; case BidibLibrary.MSG_BM_CURRENT: result = new FeedbackCurrentResponse(result.getAddr(), result.getNum(), result.getType(), result.getData()); break; case BidibLibrary.MSG_BM_FREE: result =
int type = ByteUtils.getInt(message.getType()); switch (type) { case BidibLibrary.MSG_BOOST_DIAGNOSTIC: