This is an automated email from the ASF dual-hosted git repository. sruehl pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-plc4x.git
commit ea6c83d93dabf3f30a5c710590758ff598f54f0d Author: Sebastian Rühl <[email protected]> AuthorDate: Thu Mar 1 09:38:01 2018 +0100 added negative test for PlcReader --- .../plc4x/java/api/connection/PlcReaderTest.java | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/plc4j/api/src/test/java/org/apache/plc4x/java/api/connection/PlcReaderTest.java b/plc4j/api/src/test/java/org/apache/plc4x/java/api/connection/PlcReaderTest.java index 7ee8660..12abf77 100644 --- a/plc4j/api/src/test/java/org/apache/plc4x/java/api/connection/PlcReaderTest.java +++ b/plc4j/api/src/test/java/org/apache/plc4x/java/api/connection/PlcReaderTest.java @@ -19,13 +19,21 @@ package org.apache.plc4x.java.api.connection; import org.apache.plc4x.java.api.messages.PlcReadResponse; +import org.apache.plc4x.java.api.messages.items.ReadResponseItem; import org.apache.plc4x.java.api.messages.specific.TypeSafePlcReadRequest; import org.apache.plc4x.java.api.model.Address; +import org.apache.plc4x.java.api.types.ResponseCode; import org.junit.Test; import java.util.Collections; +import java.util.List; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutionException; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.instanceOf; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.fail; import static org.mockito.Mockito.mock; public class PlcReaderTest { @@ -36,4 +44,16 @@ public class PlcReaderTest { .read(new TypeSafePlcReadRequest<>(String.class, mock(Address.class))).get(); } + @Test + public void readWrongType() throws Exception { + try { + ((PlcReader) readRequest -> CompletableFuture.completedFuture(new PlcReadResponse(readRequest, (List) Collections.singletonList(new ReadResponseItem(readRequest.getRequestItem().get(), ResponseCode.OK, Collections.singletonList(1)))))) + .read(new TypeSafePlcReadRequest<>(String.class, mock(Address.class))).get(); + fail("Should throw an exception"); + } catch (ExecutionException e) { + assertThat(e.getCause(), instanceOf(IllegalArgumentException.class)); + assertThat(e.getCause().getMessage(), equalTo("Unexpected data type class java.lang.Integer on readRequestItem. Expected class java.lang.String")); + } + } + } \ No newline at end of file -- To stop receiving notification emails like this one, please contact [email protected].
