コード例 #1
0
        public void AddChildEntity_ShouldAddChildEntitiesWithIncrementingDefaultNames_WhenEntityInitiallyHasNoChildren()
        {
            // Arrange
            var entity      = new Entity();
            var entityModel = new EntityModel(entity);

            // Act
            entityModel.AddChildEntity();
            entityModel.AddChildEntity();
            entityModel.AddChildEntity();

            // Assert
            Assert.That(entityModel.Children.Select(e => e.Name), Is.EquivalentTo(new[] { "Child entity 1", "Child entity 2", "Child entity 3" }));
        }
コード例 #2
0
        public void AddChildEntity_ShouldAddNewChildEntityAndNotifyWithEvent()
        {
            // Arrange
            var entity      = new Entity();
            var entityModel = new EntityModel(entity);

            object?eventSender             = null;
            EntityAddedEventArgs?eventArgs = null;

            entityModel.EntityAdded += (sender, args) =>
            {
                eventSender = sender;
                eventArgs   = args;
            };

            // Act
            entityModel.AddChildEntity();

            // Assert
            Assert.That(entity.Children, Has.Count.EqualTo(1));
            Assert.That(entityModel.Children, Has.Count.EqualTo(1));

            var childEntity      = entity.Children.Single();
            var childEntityModel = entityModel.Children.Single();

            Assert.That(childEntity.Name, Is.EqualTo("Child entity 1"));
            Assert.That(childEntityModel.Name, Is.EqualTo("Child entity 1"));

            Assert.That(eventSender, Is.EqualTo(entityModel));
            Debug.Assert(eventArgs != null, nameof(eventArgs) + " != null");
            Assert.That(eventArgs.EntityModel, Is.EqualTo(childEntityModel));
        }
コード例 #3
0
 private void AddChildEntity()
 {
     _entityModel.AddChildEntity();
 }