public void Constructor_NullObject()
        {
            Assert.DoesNotThrow(() => _buildRecord = new ObjectBuildRecord(typeof(SimpleClassBase), null, true));

            var propertyNames = _buildRecord.UnconstructedMembers.Select(p => p.Name).OrderBy(n => n).ToArray();

            Assert.AreEqual(new [] { "Property1" }, propertyNames);
        }
        public void Constructor_UsesObjectTypeForRetrievingProperties()
        {
            _buildRecord = new ObjectBuildRecord(typeof(SimpleClassBase), new SimpleClass(), true);

            var propertyNames = _buildRecord.UnconstructedMembers.Select(p => p.Name).OrderBy(n => n).ToArray();

            Assert.AreEqual(new [] { "Property1", "Property2" }, propertyNames);
        }
Example #3
0
 public DisposableAction PushObject(ObjectBuildRecord buildRecord)
 {
     if (IsDisposed)
     {
         throw new ObjectDisposedException("BuildSession");
     }
     if (!buildRecord.Counted)
     {
         if (BuilderInstanceTracker.IncludeInCount(buildRecord.Type))
         {
             ConstructedCount++;
         }
         buildRecord.Counted = true;
     }
     CurrentObject = CurrentObject.AddChild(buildRecord);
     _constructedNodes.Add(CurrentObject);
     return(new DisposableAction(PopObject));
 }