public void TestEquals() { HdDateTime a1 = new HdDateTime(123); HdDateTime a2 = new HdDateTime(123); HdDateTime b = new HdDateTime(42); Assert.True(a1 == a1); Assert.False(a1 != a1); Assert.True(a1 == a2); Assert.False(a1 != a2); Assert.True(a1.Equals(a2)); Assert.True(a2.Equals(a1)); Assert.True(a1.Equals((Object)a1)); Assert.True(a1.Equals((Object)a2)); Assert.True(a2.Equals((Object)a1)); Assert.True(((Object)a1).Equals((Object)a1)); Assert.True(((Object)a1).Equals((Object)a2)); Assert.True(((Object)a2).Equals((Object)a1)); Assert.True(((Object)a1).Equals((Object)a2)); Assert.True(((Object)a2).Equals((Object)a1)); Assert.False(a1 == b); Assert.False(a2 == b); Assert.True(a1 != b); Assert.False(a1.Equals(b)); Assert.False(a2.Equals(b)); Assert.False(a1.Equals((Object)b)); Assert.False(((Object)a1).Equals(b)); Assert.False(((Object)a1).Equals((Object)b)); }
private void CheckParse(String from, String fmt, HdDateTime expected) { HdDateTime parsed = HdDateTime.Parse(from, fmt); if (!expected.Equals(parsed)) { // Comparison is here to avoid problems with Formatter affecting tests for Parser Assert.AreEqual(expected, parsed); Assert.AreEqual(expected.ToString(), parsed.ToString()); } Assert.AreEqual(expected.EpochNanoseconds, parsed.EpochNanoseconds); }