예제 #1
0
        public void HashCodeHasValueSemantics()
        {
            var offset1 = new LedgerOffset.Absolute("offset1");
            var offset2 = new LedgerOffset.Absolute("offset2");
            var offset3 = new LedgerOffset.Absolute("offset1");

            Assert.IsTrue(offset1.GetHashCode() == offset3.GetHashCode());
            Assert.IsTrue(offset1.GetHashCode() != offset2.GetHashCode());
        }
예제 #2
0
        public void LedgerEndHasEquality()
        {
            var offset1 = LedgerOffset.LedgerEnd.Instance;
            var offset2 = LedgerOffset.LedgerEnd.Instance;
            var offset3 = new LedgerOffset.Absolute(offset1.Offset);

            Assert.IsTrue(offset1.Equals(offset2));
            Assert.IsTrue(offset1 == offset2);

            Assert.IsTrue(offset1.Equals(offset3));
            Assert.IsTrue(offset1 == offset3);
        }
예제 #3
0
        public void EqualityHasValueSemantics()
        {
            var offset1 = new LedgerOffset.Absolute("offset1");
            var offset2 = new LedgerOffset.Absolute("offset2");
            var offset3 = new LedgerOffset.Absolute("offset1");

            Assert.IsTrue(offset1.Equals(offset1));
            Assert.IsTrue(offset1 == offset1);

            Assert.IsTrue(offset1.Equals(offset3));
            Assert.IsTrue(offset1 == offset3);

            Assert.IsFalse(offset1.Equals(offset2));
            Assert.IsTrue(offset1 != offset2);
        }