public void TestEquality()
{
Cartesian first = new Cartesian(1.0, 2.0, 3.0);
Cartesian second = new Cartesian(1.0, 2.0, 3.0);
Assert.AreEqual(first, second);
Assert.AreEqual(second, first);
Assert.IsTrue(first == second);
Assert.IsTrue(second == first);
Assert.IsFalse(first != second);
Assert.IsFalse(second != first);
Assert.IsTrue(first.Equals(second));
Assert.IsTrue(second.Equals(first));
second = new Cartesian(0.0, 2.0, 3.0);
Assert.AreNotEqual(first, second);
Assert.AreNotEqual(second, first);
Assert.IsFalse(first == second);
Assert.IsFalse(second == first);
Assert.IsTrue(first != second);
Assert.IsTrue(second != first);
Assert.IsFalse(first.Equals(second));
Assert.IsFalse(second.Equals(first));
second = new Cartesian(1.0, 0.0, 3.0);
Assert.AreNotEqual(first, second);
Assert.AreNotEqual(second, first);
Assert.IsFalse(first == second);
Assert.IsFalse(second == first);
Assert.IsTrue(first != second);
Assert.IsTrue(second != first);
Assert.IsFalse(first.Equals(second));
Assert.IsFalse(second.Equals(first));
second = new Cartesian(1.0, 2.0, 0.0);
Assert.AreNotEqual(first, second);
Assert.AreNotEqual(second, first);
Assert.IsFalse(first == second);
Assert.IsFalse(second == first);
Assert.IsTrue(first != second);
Assert.IsTrue(second != first);
Assert.IsFalse(first.Equals(second));
Assert.IsFalse(second.Equals(first));
}