예제 #1
0
        public async Task <RestaurantDTO> CreateNewRestaurant(CreateRestaurantDTO createRestaurant)
        {
            var restaurant = _mapper.Map <Restaurant>(createRestaurant);
            await _restaurantRepository.AddNewRestaurant(restaurant);

            return(_mapper.Map <RestaurantDTO>(restaurant));
        }
예제 #2
0
        public async Task <RestaurantDTO> SaveRestaurantAsync(CreateRestaurantDTO model)
        {
            var restaurantToSave = _mapper.Map <Restaurant>(model);
            var restaurant       = await _restaurantRepository.SaveAsync(restaurantToSave);

            return(_mapper.Map <RestaurantDTO>(restaurant));
        }
예제 #3
0
        public async Task <int> CreateAsync(CreateRestaurantDTO dto)
        {
            var restaurant = _mapper.Map <Restaurant>(dto);

            restaurant.CreatedById = _userContextService.GetUserId;
            await _efCoreRestaurantRepository.Add(restaurant);

            return(restaurant.Id);
        }
예제 #4
0
        public void Svc_Can_Save_CreateRestaurantDTO()
        {
            var restaurant = new CreateRestaurantDTO();
            var context    = TestingSetup.GetContext();
            var svc        = new RestaurantService(new RestaurantRepository(context));

            Task task = svc.SaveRestaurantAsync(restaurant)
                        .ContinueWith(innerTask =>
            {
                var result = innerTask.Result;
                Assert.Equal("America/New York", result.TimeZone);
            });

            Assert.Single(context.Restaurants);
        }
예제 #5
0
        public void Restaurant_Has_Default_Values()
        {
            var restaurant = new CreateRestaurantDTO();

            Assert.Equal(5, restaurant.DeliveryRadius);
            Assert.Equal("America/New York", restaurant.TimeZone);
            Assert.Equal(90, restaurant.MinutesInAdvanceAllowDelivery);
            Assert.Equal(90, restaurant.MinutesInAdvanceAllowPickUp);
            Assert.Equal(0, restaurant.Latitude);
            Assert.Equal(string.Empty, restaurant.Name);
            Assert.Equal(string.Empty, restaurant.Email);
            Assert.Equal(string.Empty, restaurant.PhoneNumber);
            Assert.Equal(string.Empty, restaurant.Address1);
            Assert.Equal(string.Empty, restaurant.Address2);
        }
예제 #6
0
        public void Post_New_Restuarant()
        {
            var context = TestingSetup.GetContext();

            var controller =
                new RestaurantController(
                    new RestaurantService(
                        new RestaurantRepository(context)));

            var restaurant = new CreateRestaurantDTO();

            restaurant.Name = "Mike's Diner";

            var task = controller.CreateRestaurant(restaurant)
                       .ContinueWith(innterTask =>
            {
                var result = innterTask.Result;
                Assert.IsType <RestaurantDTO>(result);
                Assert.Equal("Mike's Diner", result.Name);
            });
        }
예제 #7
0
 public async Task <RestaurantDTO> CreateRestaurant([FromBody] CreateRestaurantDTO model)
 {
     return(await _restaurantService.CreateNewRestaurant(model));
 }
예제 #8
0
        public async Task <ActionResult> CreateRestaurant([FromBody] CreateRestaurantDTO dto)
        {
            var id = await restaurantService.CreateAsync(dto);

            return(Created($"/api/restaurant/{id}", null));
        }