コード例 #1
0
        public void Update_A_Restaurant_With_Duplicated_Name()
        {
            _repository.Setup(x => x.GetByName(string.Empty)).Returns(new Domain.Entities.Restaurant(string.Empty));
            var restaurant = new Domain.Entities.Restaurant("Jose's Restaurant");

            Assert.False(_service.Update(restaurant));
        }
コード例 #2
0
        public ServiceResponse <bool> Insert(RestaurantDto dto)
        {
            var result = new ServiceResponse <bool>();

            try
            {
                var entity = new Domain.Entities.Restaurant(dto.Name);
                if (entity.Valid)
                {
                    result.Result = result.Object = _service.Insert(entity);
                    if (!result.Result)
                    {
                        ((Notifiable)_service).Notifications
                        .ToList()
                        .ForEach(x => result.Messages.Add(x.Message));
                    }
                }
                else
                {
                    entity.Notifications.ToList().ForEach(x => result.Messages.Add(x.Message));
                }
            }
            catch (Exception ex)
            {
                result.Messages.Add("Problems when try to insert the restaurant: " + ex.Message);
            }

            return(result);
        }
コード例 #3
0
        public async Task <Domain.Entities.Restaurant> SaveAsync(Domain.Entities.Restaurant restaurant)
        {
            await _dbContext.AddAsync(restaurant);

            await _dbContext.SaveChangesAsync();

            return(restaurant);
        }
コード例 #4
0
        public void Delete_A_Restaurant_With_Invalid_Id()
        {
            var restaurant = new Domain.Entities.Restaurant("Jose's Restaurant");

            _repository.Setup(x => x.Get(0)).Returns(It.IsAny <Domain.Entities.Restaurant>());

            Assert.False(_service.Delete(0));
        }
コード例 #5
0
        public void Delete_A_Restaurant_With_Invalid_I()
        {
            var restaurant = new Domain.Entities.Restaurant("Jose's Restaurant");

            _repository.Setup(x => x.Get(0)).Returns(restaurant);
            _repository.Setup(x => x.Update(restaurant)).Returns(true);

            Assert.True(_service.Delete(0));
        }
コード例 #6
0
        public void Update_A_Restaurant_WithValid_Name()
        {
            var restaurant = new Domain.Entities.Restaurant("Jose's Restaurant");

            _repository.Setup(x => x.GetByName(string.Empty)).Returns(It.IsAny <Domain.Entities.Restaurant>());
            _repository.Setup(x => x.Update(restaurant)).Returns(true);

            Assert.True(_service.Update(restaurant));
        }
コード例 #7
0
        public ServiceDishTest()
        {
            _repository = new Mock <IRepositoryDish>();
            _repository.Setup(x => x.List()).Returns(new List <Domain.Entities.Dish>());
            _repository.Setup(x => x.Search(string.Empty)).Returns(new List <Domain.Entities.Dish>());
            restaurant = new Domain.Entities.Restaurant("Jose's Restaurant");
            var dish = new Dish("Xpto", null, 0);

            _repository.Setup(x => x.GetByName(string.Empty, 0)).Returns(dish);

            _service = new ServiceDish(_repository.Object);
        }
コード例 #8
0
 private static Option <Domain.Entities.Restaurant, Error> UserShouldNotRateOwnRestaurant(
     Domain.Entities.Restaurant restaurant,
     Guid userId) =>
 restaurant.NoneWhen(r =>
                     r.OwnerId == userId,
                     Error.Validation("User cannot rate he/her's own restaurant."));
コード例 #9
0
 private static Option <Domain.Entities.Restaurant, Error> RestaurantOwnerShouldRegisterMeal(
     Domain.Entities.Restaurant restaurant,
     Guid userId) =>
 restaurant.NoneWhen(r => r.OwnerId != userId, Error.Unauthorized("Current user is not the restaurant owner!"));
コード例 #10
0
 public DishTest()
 {
     restaurant = new Domain.Entities.Restaurant("Jose's Restaurant");
 }
コード例 #11
0
        public void Create_A_Restaurant_With_Valid_Name()
        {
            var entity = new Domain.Entities.Restaurant("Jose's Restaurant");

            Assert.True(entity.Valid);
        }
コード例 #12
0
        public void Create_A_Restaurant_With_Big_Name()
        {
            var entity = new Domain.Entities.Restaurant("asdfghjklçasdfghjklçasdfghjklçasdfghjklçasdfghjklça");

            Assert.False(entity.Valid);
        }
コード例 #13
0
        public void Create_A_Restaurant_With_Short_Name()
        {
            var entity = new Domain.Entities.Restaurant("Xp");

            Assert.False(entity.Valid);
        }
コード例 #14
0
        public void Create_A_Restaurant_With_Empty_Name()
        {
            var entity = new Domain.Entities.Restaurant(string.Empty);

            Assert.False(entity.Valid);
        }
コード例 #15
0
        public void Insert_A_New_Restaurant_With_Duplicated_Name()
        {
            var restaurant = new Domain.Entities.Restaurant("Jose's Restaurant");

            Assert.False(_service.Insert(restaurant));
        }