public void InspectObject_With_CircularReference()
        {
            var parent = new ClassWithCircularReference_Parent();
            parent.Child = new ClassWithCircularReference_Child();
            parent.Child.Parent = parent;
            var itensFounded = new List<object>();

            _objectInspector.InspectObject(parent, value =>
            {
                itensFounded.Add(value);
            });

            Assert.AreEqual(1, itensFounded.Count(p => p.Equals(parent)), "Deveria ter achado o objeto parent apenas uma vez");
            Assert.AreEqual(1, itensFounded.Count(p => p.Equals(parent.Child)), "Deveria ter achado o objeto parent.Child apenas uma vez");
        }
Esempio n. 2
0
        public void InspectObject_With_CircularReference()
        {
            var parent = new ClassWithCircularReference_Parent();

            parent.Child        = new ClassWithCircularReference_Child();
            parent.Child.Parent = parent;
            var itensFounded = new List <object>();

            _objectInspector.InspectObject(parent, value =>
            {
                itensFounded.Add(value);
            });

            Assert.AreEqual(1, itensFounded.Count(p => p.Equals(parent)), "Deveria ter achado o objeto parent apenas uma vez");
            Assert.AreEqual(1, itensFounded.Count(p => p.Equals(parent.Child)), "Deveria ter achado o objeto parent.Child apenas uma vez");
        }