@Override public String toString() { return MoreObjects.toStringHelper(this) .add("timestamp", getTimestamp()) .add("id", getId()) .add("mode", getMode()) .add("pid", getPid()) .add("payload", Arrays.toString(getPayload())) .add("value", getValue()) .add("negative_response_code", getNegativeResponseCode()) .add("extras", getExtras()) .toString(); }
if(message.hasPayload()) { payloadView.setText("0x" + ByteAdapter.byteArrayToHexString( message.getPayload())); } else if(message.hasValue()) { payloadView.setText("Value: " + message.getValue());
@Test public void nonEssentialFieldsNotEqual() { assertThat(response.getPid(), not(equalTo(simpleResponse.getPid()))); assertThat(response.getPayload(), not(equalTo(simpleResponse.getPayload()))); }
@Test public void clearPayload() { response.setPayload(null); assertThat(response.getPayload(), nullValue()); }
@Test public void getPayloadReturnsPayload() { assertArrayEquals(payload, response.getPayload()); }
@Test public void parcelWithNoPayload() { response.setPayload(null); Parcel parcel = Parcel.obtain(); response.writeToParcel(parcel, 0); // Reset parcel for reading parcel.setDataPosition(0); VehicleMessage createdFromParcel = VehicleMessage.CREATOR.createFromParcel(parcel); assertThat(createdFromParcel, instanceOf(DiagnosticResponse.class)); assertEquals(response, createdFromParcel); assertThat(response.getPayload(), nullValue()); }
private static void serializeDiagnosticResponse(BinaryMessages.VehicleMessage.Builder builder, DiagnosticResponse message) { builder.setType(BinaryMessages.VehicleMessage.Type.DIAGNOSTIC); BinaryMessages.DiagnosticResponse.Builder messageBuilder = BinaryMessages.DiagnosticResponse.newBuilder(); messageBuilder.setBus(message.getBusId()); messageBuilder.setMessageId(message.getId()); messageBuilder.setMode(message.getMode()); messageBuilder.setPid(message.getPid()); messageBuilder.setNegativeResponseCode(message.getNegativeResponseCode().code()); messageBuilder.setSuccess(message.isSuccessful()); if(message.hasValue()) { messageBuilder.setValue(message.getValue()); } if(message.hasPayload()) { messageBuilder.setPayload(ByteString.copyFrom(message.getPayload())); } builder.setDiagnosticResponse(messageBuilder); }
@Test public void testDeserializeDiagnosticResponseFromJsonString() throws UnrecognizedMessageTypeException { String data = "{\"bus\":1,\"id\":2028,\"mode\":1,\"success\":true,\"pid\":64,\"payload\":\"0x40800020\"}"; DiagnosticResponse response = (DiagnosticResponse) JsonFormatter.deserialize(data); assertEquals(response.getBusId(), 1); assertEquals(response.getId(), 2028); assertEquals(response.getMode(), 1); assertEquals(response.isSuccessful(), true); assertEquals(response.getPid().intValue(), 64); assertEquals(ByteAdapter.byteArrayToHexString(response.getPayload()), "40800020"); }