public void DictReferenced()
        {
            var value = new DictionaryClassReferenced(true);
            var w     = new Writer();
            var cs    = new ClassSerializer(typeof(DictionaryClassReferenced));

            Assert.True(cs.Write(w, value, null));
            Assert.AreEqual("!Test.DictionaryClassReferenced{Dict1:{\"11\":11,\"42\":42,\"65\":65},Dict2:{\"11\":11,\"42\":42,\"65\":65}}", w.ToString());

            var r      = new Reader(w.ToString());
            var result = cs.Read(r, null, null) as DictionaryClassReferenced;

            Assert.IsNotNull(result);
            Assert.IsFalse(r.AnyLeft, "Any characters left.");
            Assert.IsFalse(value.IsSame(result), "Read back value is not the same.");
        }
 public bool IsSame(DictionaryClassReferenced other)
 {
     return(ReferenceEquals(other.Dict2, other.Dict1) && base.IsSame(other));
 }