### Question:
ResourceMetadataKeyEnum implements Serializable { @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; ResourceMetadataKeyEnum<?> other = (ResourceMetadataKeyEnum<?>) obj; if (myValue == null) { if (other.myValue != null) return false; } else if (!myValue.equals(other.myValue)) return false; return true; } ResourceMetadataKeyEnum(String theValue); @Override boolean equals(Object obj); abstract T get(IResource theResource); @Override int hashCode(); String name(); abstract void put(IResource theResource, T theObject); static final ResourceMetadataKeySupportingAnyResource<InstantDt, IPrimitiveType<Date>> DELETED_AT; static final ResourceMetadataKeySupportingAnyResource<BundleEntrySearchModeEnum, String> ENTRY_SEARCH_MODE; static final ResourceMetadataKeySupportingAnyResource<BundleEntryTransactionMethodEnum, String> ENTRY_TRANSACTION_METHOD; static final ResourceMetadataKeyEnum<List<IdDt>> PROFILES; static final ResourceMetadataKeyEnum<InstantDt> PUBLISHED; static final ResourceMetadataKeyEnum<List<BaseCodingDt>> SECURITY_LABELS; static final ResourceMetadataKeyEnum<TagList> TAG_LIST; static final ResourceMetadataKeyEnum<InstantDt> UPDATED; @Deprecated
	static final ResourceMetadataKeyEnum<String> VERSION; @Deprecated
	static final ResourceMetadataKeyEnum<IdDt> VERSION_ID; }### Answer:
@Test public void testEquals() { assertNotEquals(ResourceMetadataKeyEnum.PROFILES, null); assertNotEquals(ResourceMetadataKeyEnum.PROFILES, ""); assertNotEquals(ResourceMetadataKeyEnum.PROFILES, ResourceMetadataKeyEnum.PUBLISHED); assertEquals(ResourceMetadataKeyEnum.PROFILES, ResourceMetadataKeyEnum.PROFILES); }