diff --git a/leshan-integration-tests/src/test/java/org/eclipse/leshan/integration/tests/server/redis/RedisRegistrationStoreTest.java b/leshan-integration-tests/src/test/java/org/eclipse/leshan/integration/tests/server/redis/RedisRegistrationStoreTest.java index 66ab19efe1..5fc52362f5 100644 --- a/leshan-integration-tests/src/test/java/org/eclipse/leshan/integration/tests/server/redis/RedisRegistrationStoreTest.java +++ b/leshan-integration-tests/src/test/java/org/eclipse/leshan/integration/tests/server/redis/RedisRegistrationStoreTest.java @@ -18,6 +18,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import java.net.InetAddress; @@ -159,6 +160,24 @@ public void get_composite_observation_from_request() { assertEquals(examplePaths, observation.getPaths()); } + @Test + public void remove_observation() { + // given + givenASimpleRegistration(lifetime); + store.addRegistration(registration); + + org.eclipse.californium.core.observe.Observation observationToStore = prepareCoapObservationOnSingle("/1/2/3"); + observationStore.put(aToken, observationToStore); + + // when + observationStore.remove(aToken); + + // then + Observation leshanObservation = store.getObservation(registrationId, + new ObservationIdentifier(aToken.getBytes())); + assertNull(leshanObservation); + } + private void givenASimpleRegistration(Long lifetime) { Registration.Builder builder = new Registration.Builder(registrationId, ep, Identity.unsecure(address, port), EndpointUriUtil.createUri("coap://localhost:5683")); diff --git a/leshan-server-cf/src/test/java/org/eclipse/leshan/server/californium/observation/LwM2mObservationStoreTest.java b/leshan-server-cf/src/test/java/org/eclipse/leshan/server/californium/observation/LwM2mObservationStoreTest.java index 436ee97bcc..a2d30956aa 100644 --- a/leshan-server-cf/src/test/java/org/eclipse/leshan/server/californium/observation/LwM2mObservationStoreTest.java +++ b/leshan-server-cf/src/test/java/org/eclipse/leshan/server/californium/observation/LwM2mObservationStoreTest.java @@ -17,6 +17,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import java.net.InetAddress; @@ -159,6 +160,24 @@ public void get_composite_observation_from_request() { assertEquals(examplePaths, observation.getPaths()); } + @Test + public void remove_observation() { + // given + givenASimpleRegistration(lifetime); + store.addRegistration(registration); + + org.eclipse.californium.core.observe.Observation observationToStore = prepareCoapCompositeObservation(); + observationStore.put(exampleToken, observationToStore); + + // when + observationStore.remove(exampleToken); + + // then + Observation leshanObservation = store.getObservation(registrationId, + new ObservationIdentifier(exampleToken.getBytes())); + assertNull(leshanObservation); + } + private org.eclipse.californium.core.observe.Observation prepareCoapObservation() { ObserveRequest observeRequest = new ObserveRequest(null, examplePath);