@Test
    public void getSetAndClearProperty() throws Exception {
        final String namespace = "namespace";
        final String propertyName = "propertyName";
        final String propertyValue = "propertyValue";

        component.setProperty(namespace, propertyName, propertyValue, result -> {
            assertFalse("The property should be set successfully", result.isError());
        });

        component.getProperty(namespace, propertyName, "defaultValue", result -> {
            assertFalse("The property should be fetched successfully", result.isError());
            assertEquals(propertyValue, result.getResult());
        });

        component.clearProperty(namespace, propertyName, result -> {
            assertFalse("The property should be cleared successfully", result.isError());
        });

        // retrieve the default for a non-existent property
        component.getProperty(namespace, propertyName, "defaultValue", result -> {
            assertFalse("The default property value should be returned", result.isError());
            assertEquals("defaultValue", result.getResult());
        });
    }
Tests for {@link HazelcastSharedStateComponent}.
@author Pete Cornish
gateway/engine/hazelcast/src/test/java/io/apiman/gateway/engine/hazelcast/HazelcastSharedStateComponentTest.java