Пример #1
0
        public async Task Validation_suceed_when_category_is_valid()
        {
            var category = new Data.Entity.Category {
                Name = "Category name"
            };
            var result = await GetCategoryValidator().ValidateAsync(category);

            Assert.IsNotNull(result);
            Assert.IsTrue(result.IsValid);
            Assert.IsFalse(result.ValidationEntries.Any());
        }
Пример #2
0
        public async Task Validation_fails_when_name_is_null()
        {
            var category = new Data.Entity.Category();
            var result   = await GetCategoryValidator().ValidateAsync(category);

            Assert.IsNotNull(result);
            Assert.IsFalse(result.IsValid);
            Assert.IsTrue(result.ValidationEntries.Any(e =>
                                                       e.PropertyName == nameof(category.Name) &&
                                                       e.Severity == Severity.Error &&
                                                       e.ErrorMessage == "{0} is mandatory"));
        }
Пример #3
0
        public async Task Validation_fails_when_category_in_command_has_id()
        {
            var category = new Data.Entity.Category {
                Name = "Category name", Id = 1
            };
            var command = new CreateCategoryCommand(category);
            var result  = await GetCommandValidator().ValidateAsync(command);

            Assert.IsNotNull(result);
            Assert.IsFalse(result.IsValid);
            Assert.IsTrue(result.ValidationEntries.Any(e =>
                                                       e.PropertyName == nameof(command.Category.Id) &&
                                                       e.Severity == Severity.Error &&
                                                       e.ErrorMessage == "{0} should not be specified on creation"));
        }
Пример #4
0
        public async Task Handler_creates_new_category_with_the_correct_properties()
        {
            var category = new Data.Entity.Category()
            {
                Name        = "Test category",
                Description = "Test description",
                Active      = true
            };

            var command  = new CreateCategoryCommand(category);
            var response = await mediator.ProcessCommandAsync <int>(command);

            Assert.That.This(response.Successful).IsTrue("The command response is successful");

            var createdCategory = await Context.Categories.SingleAsync(p => p.Id == response.Result);

            Assert.That.This(createdCategory).HasSameProperties(category, "Id");
            Assert.That.This(Context.Categories.Any()).IsTrue();
        }
Пример #5
0
        public async Task Handler_get_category_by_id_with_the_correct_properties()
        {
            var category = new Data.Entity.Category
            {
                Name        = DateTime.Now.ToString(CultureInfo.InvariantCulture),
                Description = "Test description",
                Active      = true
            };

            await Context.Categories.AddAsync(category);

            await Context.SaveChangesAsync();

            var query      = new GetCategoryByIdQuery(category.Id);
            var dbCategory = await mediator.ProcessQueryAsync(query);

            Assert.IsNotNull(dbCategory);

            Assert.That.This(dbCategory).HasSameProperties(category);
        }
Пример #6
0
 public UpdateCategoryCommand(int id, Data.Entity.Category category)
 {
     CategoryId = id;
     Category   = category;
 }
 public void Update(long id, CategoryParam param)
 {
     Data.Entity.Category oldEntity = Dao.Find(id);
     Data.Entity.Category newEntity = ParamConverter.Convert(param, oldEntity);
     Dao.Update(newEntity);
 }
 public CategoryResult Find(long id)
 {
     Data.Entity.Category entity = Dao.Find(id);
     return(ResultConverter.Convert(entity));
 }
 public CategoryResult Create(CategoryParam param)
 {
     Data.Entity.Category entity = ParamConverter.Convert(param, null);
     entity = Dao.Save(entity);
     return(ResultConverter.Convert(entity));
 }
Пример #10
0
 public Data.Entity.Category Update(Data.Entity.Category entity)
 {
     Delete(entity.Id);
     Save(entity);
     return(entity);
 }
Пример #11
0
 public Data.Entity.Category Save(Data.Entity.Category entity)
 {
     CategoryData.Data.Add(entity.Id, entity);
     return(entity);
 }
Пример #12
0
 public void Delete(Data.Entity.Category entity)
 {
     CategoryData.Data.Remove(entity.Id);
 }
Пример #13
0
 public void Delete(long id)
 {
     Data.Entity.Category entity = Find(id);
     Delete(entity);
 }
Пример #14
0
 public CreateCategoryCommand(Data.Entity.Category category)
 {
     Category = category;
 }
 public CategoryModel(Data.Entity.Category entity)
 {
     this.CategoryId = entity.CategoryId;
     this.Name       = entity.Name;
 }