public void EqualsTest() { IDictionary <string, JobParameter> myJobP = new Dictionary <string, JobParameter> { { "p1", new JobParameter("param1") }, { "p2", new JobParameter(2) }, { "p3", new JobParameter(3.0) }, { "p4", new JobParameter(DateTime.Parse("1970-07-31")) } }; JobParameters jp = new JobParameters(myJobP); //NOTE : ORDER DOES NOT COUNT ON EQUALS COMPARISON, ONLY <KEY,VALUES> //SAME BEHAVIOUR AS LinkedHashMap IDictionary <string, JobParameter> myJobP2 = new Dictionary <string, JobParameter> { { "p2", new JobParameter(2) }, { "p1", new JobParameter("param1") }, { "p3", new JobParameter(3.0) }, { "p4", new JobParameter(DateTime.Parse("1970-07-31")) } }; JobParameters jp2 = new JobParameters(myJobP2); JobParameters jp3 = new JobParameters(); Assert.IsTrue(DictionaryUtils <string, JobParameter> .AreEqual(myJobP, myJobP2)); Assert.IsTrue(jp.Equals(jp2)); Assert.IsFalse(jp.Equals(jp3)); }
public override bool Equals(Object obj) { if (!(obj is ConcreteInstance)) { return(false); } if (declaration != ((ConcreteInstance)obj).declaration) { return(false); } return(DictionaryUtils.AreEqual(this.values, ((ConcreteInstance)obj).values)); }
/// <summary> /// Equals override. /// </summary> /// <param name="obj"></param> /// <returns></returns> public override bool Equals(object obj) { if (!(obj is JobParameters)) { return(false); } if (obj == this) { return(true); } JobParameters rhs = (JobParameters)obj; return(DictionaryUtils <string, JobParameter> .AreEqual(_parameters, rhs._parameters)); }