public void BeNotEqual() { Element element1 = new Element(0, 1, 2); Element element2 = new Element(2, 1, 0); Assert.IsFalse(element1.Equals(element2)); }
public void BeEqual() { Element element1 = new Element(0, 1, 2); Element element2 = new Element(0, 1, 2); Assert.IsTrue(element1.Equals(element2)); Assert.AreEqual(element1.GetHashCode(), element2.GetHashCode()); }
public override bool Equals(object obj) { if (this == obj) { return(true); } if (!(obj is Element)) { return(false); } Element element = (Element)obj; if (this.values.Length != element.values.Length) { if (this.values.Length > element.values.Length) { return(element.Equals(this)); } } if (this.Order != element.Order) { return(false); } for (int k = 0; k < this.values.Length; k++) { if (this.values[k] != element.values[k]) { return(false); } } for (int k = this.values.Length; k < element.values.Length; k++) { if (element.values[k] != k) { return(false); } } return(true); }