public void ErrorCreateRequestAddressNotInformed()
        {
            var command = new CreateRequestCommand(null, null, null, _appSettings);
            var commandResult = new RequestCommandHandler(_mapper, _requestRepo.Object, _pizzaRepo.Object, _customerRepo.Object)
                .Handle(command, new CancellationToken()).Result;

            Assert.True(commandResult.HasError(1012));
        }
Example #2
0
 public async Task CreateNewRequest_ReturnsBadRequest(CreateRequestCommand a, CreateRequestCommand b,
                                                      CreateRequestCommand c, CreateRequestCommand d, CreateRequestCommand e)
 {
     Assert.True(await IsBadRequest(a));
     Assert.True(await IsBadRequest(b));
     Assert.True(await IsBadRequest(c));
     Assert.True(await IsBadRequest(d));
     Assert.True(await IsBadRequest(e));
 }
Example #3
0
        public async Task <Object> CreateUserRequest([WebHTTP.FromUri] CreateRequestCommand request)
        {
            var userID = User.Claims.FirstOrDefault(p => p.Type == "UserID").Value;

            request.FromUserID = userID;
            var result = await _requestService.CreateRequest(request);

            return(Ok(result));
        }
Example #4
0
        private async Task <bool> IsBadRequest(CreateRequestCommand command)
        {
            var content = Utilities.GetRequestContent(command);

            var response = await _client.PostAsync($"/api/requests/",
                                                   content);

            return(response.StatusCode.ToString() == "BadRequest");
        }
        public void ErrorCreateRequestPizzasIdPizzaNotInformed(int errorCode)
        {
            var pizzas = new List<RequestPizzaCommand>();
            pizzas.Add(new RequestPizzaCommand(0, 0, 1));
            var command = new CreateRequestCommand(null, null, pizzas, _appSettings);
            var commandResult = new RequestCommandHandler(_mapper, _requestRepo.Object, _pizzaRepo.Object, _customerRepo.Object)
                .Handle(command, new CancellationToken()).Result;

            Assert.True(commandResult.HasError(errorCode));
        }
Example #6
0
 public HomeViewModel(Frame createRequestFrame, MapControl navigationMap)
 {
     CreateRequestFrame    = createRequestFrame;
     NavigationMap         = navigationMap;
     AcceptRequestCommand  = new HandlingRequestCommand(AcceptRequest);
     DeclineRequestCommand = new HandlingRequestCommand(DeclineRequest);
     CreateRequestCommand  = new CreateRequestCommand(CreateRequest);
     CancelRequestCommand  = new HandlingRequestCommand(CancelRequest);
     InitializeRequestList();
 }
        public void ErrorCreateRequestPizzasNotInRange(int quantity, int errorCode)
        {
            var pizzas = new List<RequestPizzaCommand>();
            for (int p = 1; p <= quantity; p++)
                pizzas.Add(new RequestPizzaCommand(0, 0, 0));
            var command = new CreateRequestCommand(null, null, pizzas, _appSettings);
            var commandResult = new RequestCommandHandler(_mapper, _requestRepo.Object, _pizzaRepo.Object, _customerRepo.Object)
                .Handle(command, new CancellationToken()).Result;

            Assert.True(commandResult.HasError(errorCode));
        }
        public void ErrorCreateRequestPizzasIdPizzaNotExists(int errorCode)
        {
            _pizzaRepo.Setup((s) => s.IdPizzaExists(It.IsAny<int>())).Returns(Task.FromResult(false));

            var customer = new RequestCustomerCommand(1, "Gyn");
            var pizzas = new List<RequestPizzaCommand>();
            pizzas.Add(new RequestPizzaCommand(1, 1, 1));

            var command = new CreateRequestCommand(1, "Gyn", pizzas, _appSettings);
            var commandResult = new RequestCommandHandler(_mapper, _requestRepo.Object, _pizzaRepo.Object, _customerRepo.Object)
                .Handle(command, new CancellationToken()).Result;

            Assert.True(commandResult.HasError(errorCode));
        }
Example #9
0
        public async Task Handle(OrderItemsAddedEvent itemsAddedEvent)
        {
            CreateRequestCommand createRequestCommand = new CreateRequestCommand();

            createRequestCommand.CreatorReferenceId = itemsAddedEvent.CreatorReferenceId;

            List <RequestItemInputModel> requestInputItems = new List <RequestItemInputModel>();

            foreach (AddedOrderItem orderItem in itemsAddedEvent.Items)
            {
                createRequestCommand.Items.Add(new RequestItemInputModel(orderItem.RecipeId, orderItem.Note));
            }

            await CreateRequestCommandHandler.Handle(createRequestCommand, CancellationToken.None);
        }
Example #10
0
        public async Task CreateNewRequestWithNoLanguageOrigin_ReturnsSuccessCode()
        {
            var command = new CreateRequestCommand
            {
                LanguageTargetId = 20,
                TextToTranslate  = "Bobby har svært ved dansk",
                UserId           = Guid.NewGuid()
            };

            var content = Utilities.GetRequestContent(command);

            var response = await _client.PostAsync("/api/requests", content);

            response.EnsureSuccessStatusCode();
        }
Example #11
0
        public async Task CreateNewRequest_ReturnsSuccessStatusCode()
        {
            var command = new CreateRequestCommand
            {
                LanguageOriginId = 40,
                LanguageTargetId = 20,
                TextToTranslate  = "Do you want some apples?",
                UserId           = Guid.NewGuid()
            };

            var content = Utilities.GetRequestContent(command);

            var response = await _client.PostAsync("/api/requests", content);

            response.EnsureSuccessStatusCode();
        }
Example #12
0
        public async Task RequestStatusChange_NewRequest_SuccessfullRead()
        {
            IServiceCollection services = new ServiceCollection();

            services.AddKitchenDomain()
            .AddKitchenApplication()
            .AddKitchenInfrastructure("Server=.;Database=RestaurantManagementSystem;Trusted_Connection=True;MultipleActiveResultSets=true", "S0M3 M4G1C UN1C0RNS G3N3R4T3D TH1S S3CR3T");
            var serviceProviderFactory = new DefaultServiceProviderFactory();

            IServiceProvider serviceProvider = serviceProviderFactory.CreateServiceProvider(services);

            IMediator Mediator = serviceProvider.GetService <IMediator>();

            var createRequestCommand = new CreateRequestCommand();

            createRequestCommand.CreatorReferenceId = "sdafsad";
            createRequestCommand.Items.Add(new RequestItemInputModel(1, "Bez Chesun"));
            createRequestCommand.Items.Add(new RequestItemInputModel(2, "Bez Chesun"));
            CreateRequestOutputModel createRequestOutput;

            createRequestOutput = await Mediator.Send(createRequestCommand);

            var getRequestsQuery  = new GetRequestsQuery();
            var getRequestsResult = await Mediator.Send(getRequestsQuery);

            var request = getRequestsResult.Requests.FirstOrDefault(request => request.Id == createRequestOutput.RequestId);

            var setRequestStatusCommand = new SetRequestStatusCommand();

            setRequestStatusCommand.RequestId        = createRequestOutput.RequestId;
            setRequestStatusCommand.NewRequestStatus = RequestStatus.InProgress.Value;
            var newItemStatus = new ItemStatus(request.Items.ElementAt(0).Id, RequestItemStatus.Ready.Value);

            setRequestStatusCommand.ItemStatuses.Add(newItemStatus);
            await Mediator.Send(setRequestStatusCommand);

            getRequestsResult = await Mediator.Send(getRequestsQuery);

            request = getRequestsResult.Requests.FirstOrDefault(request => request.Id == createRequestOutput.RequestId);

            Assert.AreEqual(setRequestStatusCommand.NewRequestStatus.Value, request.Status.Value);
            foreach (var commandItemStatus in setRequestStatusCommand.ItemStatuses)
            {
                var requestItem = request.Items.FirstOrDefault(requestItem => requestItem.Id == commandItemStatus.ItemId);
                Assert.AreEqual(requestItem.Status.Value, commandItemStatus.NewStatus);
            }
        }
Example #13
0
        public async Task <int> CreateRequest(CreateRequestCommand command)
        {
            Request request = new Request();

            request.CreateDate  = System.DateTime.Now;
            request.FromUserID  = command.FromUserID;
            request.Issue       = command.Issue;
            request.IssueTypeID = command.IssueTypeID;
            request.TimeSlotID  = command.TimeSlotID;
            request.ToUserID    = command.ToUserID;
            request.Status      = (int)RequestStatus.Pending;
            dBContext.Requests.Add(request);

            await dBContext.SaveChangesAsync();

            return(request.RequestID);
        }
Example #14
0
        public async Task CreateRequest_NewRequest_SuccessfullRead()
        {
            IServiceCollection services = new ServiceCollection();

            services.AddKitchenDomain()
            .AddKitchenApplication()
            .AddKitchenInfrastructure("Server=.;Database=RestaurantManagementSystem;Trusted_Connection=True;MultipleActiveResultSets=true", "S0M3 M4G1C UN1C0RNS G3N3R4T3D TH1S S3CR3T");
            var serviceProviderFactory = new DefaultServiceProviderFactory();

            IServiceProvider serviceProvider = serviceProviderFactory.CreateServiceProvider(services);

            IMediator Mediator = serviceProvider.GetService <IMediator>();

            var createRequestCommand = new CreateRequestCommand();

            createRequestCommand.CreatorReferenceId = "TestId";
            createRequestCommand.Items.Add(new RequestItemInputModel(1, "Bez Chesun"));
            createRequestCommand.Items.Add(new RequestItemInputModel(2, "Bez Chesun"));

            CreateRequestOutputModel createRequestOutput;

            createRequestOutput = await Mediator.Send(createRequestCommand);

            var getRequestsQuery = new GetRequestsQuery();

            var getRequestsResult = await Mediator.Send(getRequestsQuery);

            var request = getRequestsResult.Requests.FirstOrDefault(request => request.Id == createRequestOutput.RequestId);

            Assert.AreEqual(createRequestCommand.CreatorReferenceId, request.CreatorReferenceId);
            foreach (var item in request.Items)
            {
                var commandItem = createRequestCommand.Items.FirstOrDefault(commandItem => commandItem.RecipeId == item.Recipe.Id);
                Assert.AreEqual(item.Recipe.Id, commandItem.RecipeId);
            }
        }
        public async Task <IActionResult> Create([FromBody] CreateRequestCommand command)
        {
            await Mediator.Publish(command);

            return(NoContent());
        }