Added cache, tests for enum properties and enum properties implementation