From 4fdc390ddcc96812f9741d0cf7d2caed2dcea92b Mon Sep 17 00:00:00 2001 From: nickAS21 Date: Fri, 5 Aug 2022 13:48:17 +0300 Subject: [PATCH] fix_bug: lwm2m tests --- .../transport/lwm2m/client/LwM2MTestClient.java | 16 +--------------- .../lwm2m/ota/sql/OtaLwM2MIntegrationTest.java | 4 +--- .../rpc/sql/RpcLwm2mIntegrationObserveTest.java | 7 ++++++- 3 files changed, 8 insertions(+), 19 deletions(-) diff --git a/application/src/test/java/org/thingsboard/server/transport/lwm2m/client/LwM2MTestClient.java b/application/src/test/java/org/thingsboard/server/transport/lwm2m/client/LwM2MTestClient.java index e169705f22..40996398de 100644 --- a/application/src/test/java/org/thingsboard/server/transport/lwm2m/client/LwM2MTestClient.java +++ b/application/src/test/java/org/thingsboard/server/transport/lwm2m/client/LwM2MTestClient.java @@ -53,9 +53,7 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.concurrent.CountDownLatch; import java.util.concurrent.ScheduledExecutorService; -import java.util.concurrent.TimeUnit; import static org.eclipse.californium.scandium.config.DtlsConfig.DTLS_RECOMMENDED_CIPHER_SUITES_ONLY; import static org.eclipse.leshan.core.LwM2mId.ACCESS_CONTROL; @@ -339,18 +337,6 @@ public class LwM2MTestClient { private void awaitClientAfterStartConnectLw() { LwM2mClient lwM2MClient = this.clientContext.getClientByEndpoint(endpoint); - CountDownLatch latch = new CountDownLatch(1); - Mockito.doAnswer(invocation -> { - latch.countDown(); - return null; - }).when(defaultLwM2mUplinkMsgHandlerTest).initAttributes(lwM2MClient, true); - - try { - if (!latch.await(1, TimeUnit.SECONDS)) { - throw new RuntimeException("Failed to await TimeOut lwm2m client initialization!"); - } - } catch (InterruptedException e) { - throw new RuntimeException("Exception Failed to await lwm2m client initialization! ", e); - } + Mockito.doAnswer(invocationOnMock -> null).when(defaultLwM2mUplinkMsgHandlerTest).initAttributes(lwM2MClient, true); } } diff --git a/application/src/test/java/org/thingsboard/server/transport/lwm2m/ota/sql/OtaLwM2MIntegrationTest.java b/application/src/test/java/org/thingsboard/server/transport/lwm2m/ota/sql/OtaLwM2MIntegrationTest.java index f7d1303674..a5f02114ce 100644 --- a/application/src/test/java/org/thingsboard/server/transport/lwm2m/ota/sql/OtaLwM2MIntegrationTest.java +++ b/application/src/test/java/org/thingsboard/server/transport/lwm2m/ota/sql/OtaLwM2MIntegrationTest.java @@ -124,12 +124,10 @@ public class OtaLwM2MIntegrationTest extends AbstractOtaLwM2MIntegrationTest { device.setFirmwareId(createFirmware().getId()); final Device savedDevice = doPost("/api/device", device, Device.class); - Thread.sleep(1000); - assertThat(savedDevice).as("saved device").isNotNull(); assertThat(getDeviceFromAPI(device.getId().getId())).as("fetched device").isEqualTo(savedDevice); - final List expectedStatuses = Arrays.asList(QUEUED, INITIATED, DOWNLOADING, DOWNLOADED, UPDATING, UPDATED); + final List expectedStatuses = Arrays.asList(QUEUED, INITIATED, FAILED, DOWNLOADING, DOWNLOADED, UPDATING, UPDATED); List ts = await("await on timeseries") .atMost(30, TimeUnit.SECONDS) .until(() -> toTimeseries(doGetAsyncTyped("/api/plugins/telemetry/DEVICE/" + diff --git a/application/src/test/java/org/thingsboard/server/transport/lwm2m/rpc/sql/RpcLwm2mIntegrationObserveTest.java b/application/src/test/java/org/thingsboard/server/transport/lwm2m/rpc/sql/RpcLwm2mIntegrationObserveTest.java index 77d6e6cfab..b8590d8b3b 100644 --- a/application/src/test/java/org/thingsboard/server/transport/lwm2m/rpc/sql/RpcLwm2mIntegrationObserveTest.java +++ b/application/src/test/java/org/thingsboard/server/transport/lwm2m/rpc/sql/RpcLwm2mIntegrationObserveTest.java @@ -40,15 +40,18 @@ public class RpcLwm2mIntegrationObserveTest extends AbstractRpcLwM2MIntegrationT */ @Test public void testObserveReadAllNothingObservation_Result_CONTENT_Value_Count_0() throws Exception { + String idVer_3_0_0 = objectInstanceIdVer_3 + "/" + RESOURCE_ID_0; + sendObserve("Observe", fromVersionedIdToObjectId(idVer_3_0_0)); String actualResultBefore = sendObserve("ObserveReadAll", null); ObjectNode rpcActualResultBefore = JacksonUtil.fromString(actualResultBefore, ObjectNode.class); assertEquals(ResponseCode.CONTENT.getName(), rpcActualResultBefore.get("result").asText()); + assertTrue(rpcActualResultBefore.get("value").asText().contains(fromVersionedIdToObjectId(idVer_3_0_0))); assertTrue(rpcActualResultBefore.get("value").asText().contains(fromVersionedIdToObjectId(idVer_3_0_9))); assertTrue(rpcActualResultBefore.get("value").asText().contains(fromVersionedIdToObjectId(idVer_19_0_0))); String actualResult = sendObserve("ObserveCancelAll", null); ObjectNode rpcActualResult = JacksonUtil.fromString(actualResult, ObjectNode.class); assertEquals(ResponseCode.CONTENT.getName(), rpcActualResult.get("result").asText()); - assertEquals("2", rpcActualResult.get("value").asText()); + assertEquals("3", rpcActualResult.get("value").asText()); String actualResultAfter = sendObserve("ObserveReadAll", null); ObjectNode rpcActualResultAfter = JacksonUtil.fromString(actualResultAfter, ObjectNode.class); assertEquals(ResponseCode.CONTENT.getName(), rpcActualResultAfter.get("result").asText()); @@ -148,6 +151,8 @@ public class RpcLwm2mIntegrationObserveTest extends AbstractRpcLwM2MIntegrationT */ @Test public void testObserveRepeatedRequestObserveOnDevice_Result_BAD_REQUEST_ErrorMsg_AlreadyRegistered() throws Exception { + String idVer_3_0_0 = objectInstanceIdVer_3 + "/" + RESOURCE_ID_0; + sendObserve("Observe", fromVersionedIdToObjectId(idVer_3_0_0)); String actualResult = sendObserve("Observe", idVer_3_0_9); ObjectNode rpcActualResult = JacksonUtil.fromString(actualResult, ObjectNode.class); assertEquals(ResponseCode.BAD_REQUEST.getName(), rpcActualResult.get("result").asText());