### Question:
TokenTransformConfig { @Override public boolean equals(Object other) { if (other instanceof TokenTransformConfig) { TokenTransformConfig otherConfig = (TokenTransformConfig)other; return inputTokenType.equals(otherConfig.getInputTokenType().getId()) && outputTokenType.equals(otherConfig.getOutputTokenType().getId()); } return false; } TokenTransformConfig(TokenTypeId inputTokenType, TokenTypeId outputTokenType, boolean invalidateInterimOpenAMSession);  TokenTransformConfig(String inputTokenType, String outputTokenType, boolean invalidateInterimOpenAMSession); TokenTypeId getOutputTokenType(); boolean invalidateInterimOpenAMSession(); TokenTypeId getInputTokenType(); @Override boolean equals(Object other); @Override int hashCode(); @Override String toString(); JsonValue toJson(); static TokenTransformConfig fromJson(JsonValue json); String toSMSString(); static TokenTransformConfig fromSMSString(String stringRepresentation);  }### Answer:
@Test public void testEquals() { TokenTransformConfig ttc1 = new TokenTransformConfig(TokenType.OPENAM, TokenType.SAML2, AMSTSConstants.INVALIDATE_INTERIM_OPENAM_SESSION); TokenTransformConfig ttc2 = new TokenTransformConfig(TokenType.OPENAM, TokenType.SAML2, AMSTSConstants.INVALIDATE_INTERIM_OPENAM_SESSION); assertEquals(ttc1, ttc2); assertEquals(ttc1.hashCode(), ttc2.hashCode()); TokenTransformConfig ttc3 = new TokenTransformConfig(TokenType.OPENAM, TokenType.SAML2, AMSTSConstants.INVALIDATE_INTERIM_OPENAM_SESSION); TokenTransformConfig ttc4 = new TokenTransformConfig(TokenType.OPENAM, TokenType.SAML2, !AMSTSConstants.INVALIDATE_INTERIM_OPENAM_SESSION); assertEquals(ttc3, ttc4); assertEquals(ttc3.hashCode(), ttc4.hashCode()); }