예제 #1
0
        public void BoolValues_ToString_BoolValue_Equals()
        {
            //Arrange
            const bool origBool = true;
            var        value    = BoolValue.FromBool(origBool);

            //Assert
            Assert.AreEqual(origBool.ToString(), value.ToString());
        }
예제 #2
0
        public void BoolValues_InequalOperator_EqualParameters_False()
        {
            //Arrange
            var value1 = BoolValue.FromBool(true);
            var value2 = BoolValue.FromBool(true);

            //Act
            var result = value1 != value2;

            //Assert
            Assert.IsFalse(result);
        }
예제 #3
0
        public void BoolValues_Equals_DifferentValues_False()
        {
            //Arrange
            var value1 = BoolValue.FromBool(true);
            var value2 = BoolValue.FromBool(false);

            //Act
            var result = value1.Equals(value2);

            //Assert
            Assert.IsFalse(result);
        }
예제 #4
0
        public void BoolValues_Equals_EqualValues_True()
        {
            //Arrange
            var value1 = BoolValue.FromBool(true);
            var value2 = BoolValue.FromBool(true);

            //Act
            var result = value1.Equals(value2);

            //Assert
            Assert.IsTrue(result);
        }
예제 #5
0
#pragma warning disable IDE0051 // Remove unused private members
#pragma warning disable CC0068  // Unused Method

        private void Handle(CreatedEvent @event)
        {
            Id       = @event.Id;
            MyString = StringValue.FromString(@event.MyString);
            MyBool   = BoolValue.FromBool(@event.MyBool);
        }
예제 #6
0
        public void Entity_Create_ValidData_ReturnsAggregate()
        {
            //Arrange
            var taGuid = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta     = TestAggregate.Create(TestAggregateId.FromGuid(taGuid), StringValue.FromString("testtest"), BoolValue.FromBool(true));
            var teGuid = Guid.Parse("12c9077f-ddc1-4ded-bbc6-ff816d384788");

            //Act
            ta.AddEntity(TestEntityId.FromGuid(teGuid), StringValue.FromString("entity"));

            //Assert
            Assert.IsNotNull(ta.MyTe);
            Assert.AreEqual(teGuid, ta.MyTe.Id.Value);
            Assert.AreEqual("entity", ta.MyTe.MyString.Value);
        }
예제 #7
0
        public void EnsureValidation_Called()
        {
            //Arrange
            var guid = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");

            //Act and arrange
            Assert.Throws <InvalidEntityState>(() => TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("short"), BoolValue.FromBool(true)));
        }
예제 #8
0
        public void ClearChanges_NoEventsReturned()
        {
            //Arrange
            var guid = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta   = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));

            ta.UpdateString(StringValue.FromString("Hello world"));

            //Act
            ta.ClearChanges();
            var changes = ta.GetChanges();

            //Arrange
            Assert.AreEqual(0, changes.Count);
        }
예제 #9
0
        public void GetChanges_CommandsExecuted_EventsReturned()
        {
            //Arrange
            var guid = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta   = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));

            ta.UpdateString(StringValue.FromString("Hello world"));

            //Act
            var changes = ta.GetChanges();

            //Arrange
            Assert.AreEqual(2, changes.Count);
            Assert.IsTrue(changes[0] is CreatedEvent);
            Assert.IsTrue(changes[1] is StringUpdatedEvent);
        }
예제 #10
0
        public void CommandNotImplementedEventHandler_ThrowsMissingMethodException()
        {
            //Arrange
            var guid = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta   = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));

            //Act and Assert
            Assert.Throws <MissingMethodException>(() => ta.CommandNotImplementedEventHandler());
        }
예제 #11
0
        public void Create_ValidData_ReturnsAggregate()
        {
            //Arrange
            var guid = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");

            //Act
            var ta = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));

            //Assert
            Assert.IsNotNull(ta);
            Assert.AreEqual(guid, ta.Id);
            Assert.AreEqual("testtest", ta.MyString.Value);
            Assert.AreEqual(true, ta.MyBool.Value);
        }
예제 #12
0
        public void Entity_EnsureValidation_Called()
        {
            //Arrange
            var guid   = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta     = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));
            var teGuid = Guid.Parse("12c9077f-ddc1-4ded-bbc6-ff816d384788");

            //Act and arrange
            Assert.Throws <InvalidEntityState>(() => ta.AddEntity(TestEntityId.FromGuid(teGuid), StringValue.FromString("e")));
        }
예제 #13
0
        public void Entity_ClearChanges_NoEventsReturned()
        {
            //Arrange
            var guid   = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta     = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));
            var teGuid = Guid.Parse("12c9077f-ddc1-4ded-bbc6-ff816d384788");

            ta.AddEntity(TestEntityId.FromGuid(teGuid), StringValue.FromString("entity"));

            //Act
            ta.ClearChanges();
            var changes = ta.GetChanges();

            //Arrange
            Assert.AreEqual(0, changes.Count);
        }
예제 #14
0
        public void Entity_GetChanges_CommandsExecuted_EventsReturned()
        {
            //Arrange
            var guid   = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta     = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));
            var teGuid = Guid.Parse("12c9077f-ddc1-4ded-bbc6-ff816d384788");

            ta.AddEntity(TestEntityId.FromGuid(teGuid), StringValue.FromString("entity"));

            //Act
            var changes = ta.GetChanges();

            //Arrange
            Assert.AreEqual(2, changes.Count);
            Assert.IsTrue(changes[0] is CreatedEvent);
            Assert.IsTrue(changes[1] is TestEntityAddedToTestAggregateEvent);
        }
예제 #15
0
        public void Entity_CommandNotImplementedEventHandler_ThrowsMissingMethodException()
        {
            //Arrange
            var guid   = Guid.Parse("5ffdfca6-2cb6-4a22-8943-339a65298a2b");
            var ta     = TestAggregate.Create(TestAggregateId.FromGuid(guid), StringValue.FromString("testtest"), BoolValue.FromBool(true));
            var teGuid = Guid.Parse("12c9077f-ddc1-4ded-bbc6-ff816d384788");

            ta.AddEntity(TestEntityId.FromGuid(teGuid), StringValue.FromString("entity"));

            //Act and Assert
            Assert.Throws <MissingMethodException>(() => ta.MyTe.CommandNotImplementedEventHandler());
        }