Exemple #1
0
        public void HashCodeAndEqualTest()
        {
            Oid oid  = new Oid(Meta.GetAssetType("Story"), 5, null);
            Oid oid2 = Oid.FromToken("Story:5", Meta);

            Assert.AreEqual(oid, oid2);
            Assert.AreEqual(oid.GetHashCode(), oid2.GetHashCode());
        }
Exemple #2
0
        public void FromTokenIsNull()
        {
            Oid oid = Oid.FromToken("NULL", Meta);

            Assert.AreEqual(Oid.Null, oid);
            Assert.AreSame(Oid.Null, oid);
            Assert.AreEqual(Oid.Null.GetHashCode(), oid.GetHashCode());
        }
Exemple #3
0
        public void HashCodeAndEqualWithMomentTest()
        {
            Oid oid           = new Oid(Meta.GetAssetType("Story"), 5, 555);
            Oid oid2          = Oid.FromToken("Story:5:555", Meta);
            Oid anotherOid    = Oid.FromToken("Story:5:666", Meta);
            Oid momentlessOid = Oid.FromToken("Story:5", Meta);

            Assert.AreEqual(oid, oid2);
            Assert.AreEqual(oid.GetHashCode(), oid2.GetHashCode());
            Assert.AreNotEqual(oid, anotherOid);
            Assert.AreNotEqual(oid, momentlessOid);
            Assert.AreNotEqual(momentlessOid, anotherOid);
        }
Exemple #4
0
        public override int GetHashCode()
        {
            // The value of GetHashCode should not be allowed to change during an objects lifetime!
            // If it does, it leads to crazy problems with Dictionaries etc (as they cache the value)

// ReSharper disable NonReadonlyFieldInGetHashCode
// ReSharper disable BaseObjectGetHashCodeCallInGetHashCode
            if (_requestedHashCode.HasValue)
            {
                return(_requestedHashCode.Value);
            }

            var hashCode = HasOidAssigned ? Oid.GetHashCode() : base.GetHashCode();

            _requestedHashCode = hashCode;
            return(hashCode);
// ReSharper restore BaseObjectGetHashCodeCallInGetHashCode
// ReSharper restore NonReadonlyFieldInGetHashCode
        }
Exemple #5
0
 public override int GetHashCode()
 {
     return(Oid.GetHashCode());
 }
 public override int GetHashCode()
 {
     return(oid != null ? oid.GetHashCode() : 0);
 }
 public void HashCodeAndEqualWithMomentTest()
 {
     Oid oid = new Oid(Meta.GetAssetType("Story"), 5, 555);
     Oid oid2 = Oid.FromToken("Story:5:555", Meta);
     Oid anotherOid = Oid.FromToken("Story:5:666", Meta);
     Oid momentlessOid = Oid.FromToken("Story:5", Meta);
     Assert.AreEqual(oid, oid2);
     Assert.AreEqual(oid.GetHashCode(), oid2.GetHashCode());
     Assert.AreNotEqual(oid, anotherOid);
     Assert.AreNotEqual(oid, momentlessOid);
     Assert.AreNotEqual(momentlessOid, anotherOid);
 }
 public void HashCodeAndEqualTest()
 {
     Oid oid = new Oid(Meta.GetAssetType("Story"), 5, null);
     Oid oid2 = Oid.FromToken("Story:5", Meta);
     Assert.AreEqual(oid, oid2);
     Assert.AreEqual(oid.GetHashCode(), oid2.GetHashCode());
 }