@@ -280,4 +280,28 @@ class MongoCredentialSpecification extends Specification {
280280
281281 ! credentialOne. toString(). contains(password)
282282 }
283+
284+ def ' testEqualsAndHashCode' () {
285+ expect :
286+ credential() == credential()
287+ credential(). hashCode() == credential(). hashCode()
288+
289+ where :
290+ credential << [
291+ { MongoCredential . createCredential(' user' , ' database' , ' pwd' . toCharArray()) },
292+ { MongoCredential . createCredential(' user' , ' database' , ' pwd' . toCharArray()). withMechanismProperty(' foo' , ' bar' ) },
293+ { MongoCredential . createMongoCRCredential(' user' , ' database' , ' pwd' . toCharArray()) },
294+ { MongoCredential . createMongoCRCredential(' user' , ' database' , ' pwd' . toCharArray()). withMechanismProperty(' foo' , ' bar' ) },
295+ { MongoCredential . createPlainCredential(' user' , ' $external' , ' pwd' . toCharArray()) },
296+ { MongoCredential . createPlainCredential(' user' , ' $external' , ' pwd' . toCharArray()). withMechanismProperty(' foo' , ' bar' ) },
297+ { MongoCredential . createScramSha1Credential(' user' , ' $external' , ' pwd' . toCharArray()) },
298+ { MongoCredential . createScramSha1Credential(' user' , ' $external' , ' pwd' . toCharArray()). withMechanismProperty(' foo' , ' bar' ) },
299+ { MongoCredential . createGSSAPICredential(' user' ) },
300+ { MongoCredential . createGSSAPICredential(' user' ). withMechanismProperty(' foo' , ' bar' ) },
301+ { MongoCredential . createMongoX509Credential(' user' ) },
302+ { MongoCredential . createMongoX509Credential(' user' ). withMechanismProperty(' foo' , ' bar' ) },
303+ { MongoCredential . createMongoX509Credential() },
304+ { MongoCredential . createMongoX509Credential(). withMechanismProperty(' foo' , ' bar' ) },
305+ ]
306+ }
283307}
0 commit comments