public void AggregateNameIsCorrect()
 {
     Guid id = Guid.NewGuid();
     var cmd = new AddOne(id);
     CommandRouter.ExecuteCommand(cmd);
     var builtAggregate = AggregateBuilder.Get<TestAggregate>(id);
     Assert.That(builtAggregate.TypeName, Is.EqualTo(builtAggregate.GetType().FullName));
 }
        public void MultipleCommandsExecuteCorrectly()
        {
            Guid id = Guid.NewGuid();
            var c1 = new AddOne(id);
            CommandRouter.ExecuteCommand(c1);
            var c2 = new MinusOne(id);
            CommandRouter.ExecuteCommand(c2);

            var aggregate = AggregateBuilder.Get<TestAggregate>(id);
            Assert.That(aggregate.Count, Is.EqualTo(0));
        }
        public void CanBuildUpAggregateAfterCommandFired()
        {
            Guid id = Guid.NewGuid();
            var cmd = new AddOne(id);
            CommandRouter.ExecuteCommand(cmd);

            var builtAggregate = AggregateBuilder.Get<TestAggregate>(cmd.AggregateIdentity);

            Assert.That(builtAggregate, Is.Not.Null);
            Assert.That(builtAggregate.Count, Is.EqualTo(1));
        }
 public void On(AddOne cmd)
 {
     FireEvent(new OneAdded(cmd.AggregateIdentity));
 }