@SuppressWarnings("unchecked")
    public final <T> T getValue(final E key) {
        return (T) cache.get(key).getValue();
    }
@Test
    void assertGetDefaultValue() {
        TypedPropertiesFixture actual = new TypedPropertiesFixture(new Properties());
        assertFalse((Boolean) actual.getValue(TypedPropertyKeyFixture.BOOLEAN_VALUE));
        assertFalse((Boolean) actual.getValue(TypedPropertyKeyFixture.BOOLEAN_OBJECT_VALUE));
        assertThat(actual.getValue(TypedPropertyKeyFixture.INT_VALUE), is(10));
        assertThat(actual.getValue(TypedPropertyKeyFixture.INT_OBJECT_VALUE), is(10));
        assertThat(actual.getValue(TypedPropertyKeyFixture.LONG_VALUE), is(1000L));
        assertThat(actual.getValue(TypedPropertyKeyFixture.LONG_OBJECT_VALUE), is(1000L));
        assertThat(actual.getValue(TypedPropertyKeyFixture.STRING_VALUE), is("value"));
    }