lwm2m: add await before updateReg
This commit is contained in:
parent
edad8f4932
commit
7942173e74
@ -21,9 +21,9 @@ import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.eclipse.leshan.client.LeshanClient;
|
||||
import org.eclipse.leshan.client.object.Security;
|
||||
import org.eclipse.leshan.core.ResponseCode;
|
||||
import org.eclipse.leshan.server.registration.Registration;
|
||||
import org.junit.After;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
@ -90,6 +90,8 @@ import static org.awaitility.Awaitility.await;
|
||||
import static org.eclipse.leshan.client.object.Security.noSec;
|
||||
import static org.hamcrest.core.IsInstanceOf.instanceOf;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.mockito.Mockito.timeout;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||
import static org.thingsboard.server.transport.lwm2m.Lwm2mTestHelper.LwM2MClientState.ON_BOOTSTRAP_STARTED;
|
||||
import static org.thingsboard.server.transport.lwm2m.Lwm2mTestHelper.LwM2MClientState.ON_BOOTSTRAP_SUCCESS;
|
||||
@ -449,4 +451,9 @@ public abstract class AbstractLwM2MIntegrationTest extends AbstractTransportInte
|
||||
.filter(invocation -> invocation.getMethod().getName().equals("updatedReg"))
|
||||
.count();
|
||||
}
|
||||
|
||||
protected void awaitUpdateReg(int cntUpdate) {
|
||||
verify(defaultUplinkMsgHandlerTest, timeout(50000).atLeast(cntUpdate))
|
||||
.updatedReg(Mockito.any(Registration.class));
|
||||
}
|
||||
}
|
||||
|
||||
@ -322,13 +322,11 @@ public class RpcLwm2mIntegrationObserveTest extends AbstractRpcLwM2MIntegrationO
|
||||
public void testObserveResource_Update_AfterUpdateRegistration() throws Exception {
|
||||
sendObserveCancelAllWithAwait(lwM2MTestClient.getDeviceIdStr());
|
||||
|
||||
int cntUpdate = 3;
|
||||
verify(defaultUplinkMsgHandlerTest, timeout(50000).atLeast(cntUpdate))
|
||||
.updatedReg(Mockito.any(Registration.class));
|
||||
awaitUpdateReg(3);
|
||||
|
||||
sendRpcObserveWithContainsLwM2mSingleResource(idVer_3_0_9);
|
||||
|
||||
cntUpdate = 10;
|
||||
int cntUpdate = 10;
|
||||
verify(defaultUplinkMsgHandlerTest, timeout(50000).atLeast(cntUpdate))
|
||||
.updateAttrTelemetry(Mockito.any(Registration.class), eq(idVer_3_0_9), eq(null));
|
||||
}
|
||||
|
||||
@ -218,6 +218,8 @@ public abstract class AbstractSecurityLwM2MIntegrationTest extends AbstractLwM2M
|
||||
log.warn("basicTestConnection started -> finishState: [{}] states: {}", finishState, lwM2MTestClient.getClientStates());
|
||||
return lwM2MTestClient.getClientStates().contains(finishState) || lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_STARTED);
|
||||
});
|
||||
|
||||
awaitUpdateReg(1);
|
||||
await(awaitAlias)
|
||||
.atMost(40, TimeUnit.SECONDS)
|
||||
.until(() -> {
|
||||
@ -262,6 +264,8 @@ public abstract class AbstractSecurityLwM2MIntegrationTest extends AbstractLwM2M
|
||||
log.warn("basicTest First Connection started -> finishState: [{}] states: {}", ON_REGISTRATION_SUCCESS, lwM2MTestClient.getClientStates());
|
||||
return lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_SUCCESS) || lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_STARTED);
|
||||
});
|
||||
|
||||
awaitUpdateReg(1);
|
||||
await(awaitAlias)
|
||||
.atMost(40, TimeUnit.SECONDS)
|
||||
.until(() -> {
|
||||
@ -288,6 +292,8 @@ public abstract class AbstractSecurityLwM2MIntegrationTest extends AbstractLwM2M
|
||||
log.warn("basicTestConnection started -> finishState: [{}] states: {}", ON_REGISTRATION_SUCCESS, lwM2MTestClient.getClientStates());
|
||||
return lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_SUCCESS) || lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_STARTED);
|
||||
});
|
||||
|
||||
awaitUpdateReg(1);
|
||||
await(awaitAlias)
|
||||
.atMost(40, TimeUnit.SECONDS)
|
||||
.until(() -> {
|
||||
@ -392,12 +398,12 @@ public abstract class AbstractSecurityLwM2MIntegrationTest extends AbstractLwM2M
|
||||
|
||||
|
||||
protected void initDeviceCredentialsNoSek() {
|
||||
clientEndpoint = CLIENT_ENDPOINT_NO_SEC + "_" + randomSuffix.nextInt(100);
|
||||
clientEndpoint = CLIENT_ENDPOINT_NO_SEC + "_" + randomSuffix.nextInt(1000);
|
||||
security = SECURITY_NO_SEC;
|
||||
deviceCredentials = getDeviceCredentialsNoSec(createNoSecClientCredentials(clientEndpoint));
|
||||
}
|
||||
protected void initDeviceCredentialsPsk() {
|
||||
int suf = randomSuffix.nextInt(10);
|
||||
int suf = randomSuffix.nextInt(1000);
|
||||
clientEndpoint = CLIENT_ENDPOINT_PSK + "_" + suf;
|
||||
String identity = CLIENT_PSK_IDENTITY + "_" + suf;
|
||||
clientCredentials = new PSKClientCredential();
|
||||
|
||||
@ -54,6 +54,8 @@ public abstract class AbstractSecurityLwM2MIntegrationDtlsCidLengthTest extends
|
||||
final Device device = createLwm2mDevice(deviceCredentials, clientEndpoint, deviceProfile.getId());
|
||||
createNewClient(security, null, true, clientEndpoint, clientDtlsCidLength, device.getId().getId().toString());
|
||||
lwM2MTestClient.start(true);
|
||||
|
||||
awaitUpdateReg(1);
|
||||
await(awaitAlias)
|
||||
.atMost(40, TimeUnit.SECONDS)
|
||||
.until(() -> lwM2MTestClient.getClientStates().contains(ON_UPDATE_SUCCESS));
|
||||
|
||||
@ -70,11 +70,15 @@ public abstract class AbstractLwM2MIntegrationDiffPortTest extends AbstractSecur
|
||||
.until(() -> lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_SUCCESS) || lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_STARTED));
|
||||
Assert.assertTrue(lwM2MTestClient.getClientStates().containsAll(expectedStatusesRegistrationLwm2mSuccess));
|
||||
|
||||
awaitUpdateReg(1);
|
||||
await(awaitAlias)
|
||||
.atMost(40, TimeUnit.SECONDS)
|
||||
.until(() -> lwM2MTestClient.getClientStates().contains(ON_UPDATE_SUCCESS));
|
||||
|
||||
Assert.assertTrue(lwM2MTestClient.getClientStates().containsAll(expectedStatusesRegistrationLwm2mSuccessUpdate));
|
||||
|
||||
long cntBefore = countUpdateReg();
|
||||
awaitUpdateReg((int) (cntBefore + 1));
|
||||
}
|
||||
|
||||
private RegistrationUpdate registrationUpdateNewPort (RegistrationUpdate update, int portValueChange) {
|
||||
|
||||
@ -214,6 +214,8 @@ public class AbstractLwm2mClientTest extends AbstractContainerTest {
|
||||
log.warn("msa basicTestConnection started -> finishState: [{}] states: {}", finishState, lwM2MTestClient.getClientStates());
|
||||
return lwM2MTestClient.getClientStates().contains(finishState) || lwM2MTestClient.getClientStates().contains(ON_REGISTRATION_STARTED);
|
||||
});
|
||||
|
||||
awaitUpdateReg(1);
|
||||
await(alias + " - " + ON_UPDATE_SUCCESS)
|
||||
.atMost(40, TimeUnit.SECONDS)
|
||||
.until(() -> {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user