NUnit Assert.Entspricht das, Was ich bin fehlt?

Geltend zu machen.Equals () - ruft nie

Equals()
operator ==
operator !=

Bin ich etwas fehlt? Ich habe IEquatable implementiert aber noch die Methoden, die nie aufgerufen wird, während mit nunit.

if (objectA != objectB) Assert.Fail(); //doesnt fail
if (!objectA.Equals(objectB)) Assert.Fail(); //doesnt fail
Assert.AreEqual(objectA, objectB); //fail

UPDATE

Ich sollte gewesen klarer.

public class Entity 
{
  public int ID { get; set; }
}

var objectA = new Entity() { ID = 1 };
var objectB = new Entity() { ID = 1 };

zwei separate Instanzen, die beide mit der gleichen ID habe ich implementiert, die alle relevanten Methoden, um diese Arbeit zu machen für ==, != und Gleich, aber nunit AreSame und AreEqual immer noch nicht rufen Sie diese Methoden.

  • Ich habe genau das gleiche problem. Für jetzt bin ich mit Geltend zu machen.IsTrue(objectA.Equals(objectB));
  • Ich habe das gleiche problem und ich habe festgestellt, dass es funktioniert, wenn die Objekte, die ich Vergleiche nicht die gleiche Referenz. ie erstellen 2 Objekte mit unterschiedlichen Eigenschaften, abgesehen von der Gleichheit im Vergleich Eigenschaften, dann Behaupten.Gleich funktioniert... Wenn es die gleiche Referenz verglichen wird (die werden sicherlich gleich), dann scheitert es! nicht gleich (NUnit 2.5)
  • Sie sind auf der Suche für Assert.AreEqual(objA, objB);
InformationsquelleAutor bleevo | 2009-07-06
Schreibe einen Kommentar