Example #1
0
        public void ShouldFindByName(string name)
        {
            IPersistence persistence = new FakePersistence();

            var tech = new Category(id: Guid.NewGuid(), name: name);

            persistence.Create(tech);

            Assert.Equal(persistence.FindByName(tech.Name), tech);
        }
Example #2
0
        public void ShouldSaveCategory()
        {
            var command = new CreateCategoryCommand()
            {
                Id   = Guid.NewGuid(),
                Name = "name"
            };

            FakePersistence persistence    = new FakePersistence();
            var             commandHandler = new CreateCategoryCommandHandler(persistence);

            commandHandler.Execute(command);

            var category = persistence.FindByName(command.Name);

            Assert.Equal(command.Id.Value, category.Id);
            Assert.Equal(command.Name, category.Name);
        }
Example #3
0
        public void NameMustBeUnique()
        {
            var command1 = new CreateCategoryCommand()
            {
                Id   = Guid.NewGuid(),
                Name = "name"
            };

            var command2 = new CreateCategoryCommand()
            {
                Id   = Guid.NewGuid(),
                Name = "name"
            };

            IPersistence persistence    = new FakePersistence();
            var          commandHandler = new CreateCategoryCommandHandler(persistence);

            commandHandler.Execute(command1);

            Assert.Throws <ArgumentException>(() => commandHandler.Execute(command2));
        }