unit test examples ejemplos debug areequal c# assert

ejemplos - c# unit test assert examples



Diferencia entre Assert.AreEqual y Assert.AreSame? (2)

¿Cuál es la diferencia entre Assert.AreEqual y Assert.AreSame ?


Significa que AreSame () comprueba que son exactamente el mismo objeto, si la referencia indica el mismo objeto en la memoria.

AreEqual () verifica que los objetos tengan igual tipo y valor. Objetos iguales pueden existir en dos lugares diferentes en la memoria.


Assert.AreEqual(a, b) es lo mismo que Assert.IsTrue(Object.Equals(a, b))

Assert.AreSame(a, b) es lo mismo que Assert.IsTrue(Object.ReferenceEquals(a, b))

(la única razón por la que lo supe es que me lo imaginé hace unas horas porque necesitaba hacer un Assert.IsTrue(Object.ReferenceEquals(a,b)) y pensé "Me pregunto si hay una mejor manera de hacerlo esta")