//-------------------------------------------------------------------------
        public virtual void test_equals()
        {
            LongDoublePair a  = LongDoublePair.of(1L, 2.0d);
            LongDoublePair a2 = LongDoublePair.of(1L, 2.0d);
            LongDoublePair b  = LongDoublePair.of(1L, 3.0d);
            LongDoublePair c  = LongDoublePair.of(2L, 2.0d);
            LongDoublePair d  = LongDoublePair.of(2L, 3.0d);

            assertEquals(a.Equals(a), true);
            assertEquals(a.Equals(b), false);
            assertEquals(a.Equals(c), false);
            assertEquals(a.Equals(d), false);
            assertEquals(a.Equals(a2), true);

            assertEquals(b.Equals(a), false);
            assertEquals(b.Equals(b), true);
            assertEquals(b.Equals(c), false);
            assertEquals(b.Equals(d), false);

            assertEquals(c.Equals(a), false);
            assertEquals(c.Equals(b), false);
            assertEquals(c.Equals(c), true);
            assertEquals(c.Equals(d), false);

            assertEquals(d.Equals(a), false);
            assertEquals(d.Equals(b), false);
            assertEquals(d.Equals(c), false);
            assertEquals(d.Equals(d), true);
        }
        public virtual void test_equals_bad()
        {
            LongDoublePair a = LongDoublePair.of(1L, 1.7d);

            assertEquals(a.Equals(null), false);
            assertEquals(a.Equals(ANOTHER_TYPE), false);
            object unrelatedType = Pair.of(Convert.ToInt64(1L), Convert.ToDouble(1.7d));

            assertEquals(a.Equals(unrelatedType), false);
        }