Пример #1
0
        public async Task GetWorkOrderWithFlowShouldFailIfGetOrderByIdFails()
        {
            //Arrange
            var id = new Guid("76122118-5f89-4715-8360-c78d1fa95c1a");
            var locationBuildService = new Mock <ILocationBuildService>().Object;
            var jsonService          = new Mock <IJsonService <object> >().Object;
            var responseMessage      = new HttpResponseMessage();

            responseMessage.StatusCode = HttpStatusCode.BadRequest;
            responseMessage.Content    = new StringContent("{bad}");
            var usersRestApi          = new Mock <IUsersRestApi>().Object;
            var teamsRestApi          = new Mock <ITeamsRestApi>().Object;
            var eccSetupRestApi       = new Mock <IEccSetupRestApi>().Object;
            var workOrdersRestApiMock = new Mock <IWorkOrdersRestApi>();

            workOrdersRestApiMock.Setup(x => x.GetOrder(It.IsAny <string>())).Returns(Task.FromResult(responseMessage));
            var workOrdersRestApi  = workOrdersRestApiMock.Object;
            var filterBuildService = new Mock <IFilterBuildService>().Object;
            var filterMapper       = new Mock <IFilterMapper>().Object;
            var mapper             = new Mock <IMapper>().Object;
            var modelDtoConverter  = new Mock <IModelDtoConverter>().Object;

            var mobileService = new MobileService(usersRestApi,
                                                  teamsRestApi,
                                                  eccSetupRestApi,
                                                  workOrdersRestApi,
                                                  filterMapper,
                                                  filterBuildService,
                                                  jsonService,
                                                  locationBuildService,
                                                  modelDtoConverter,
                                                  mapper);


            var response = await mobileService.GetWorkOrderWithFlow(new StartOrderFromBody()
            {
                Id = id, Login = "******"
            });

            //Assert
            response.IsFailure.Should().Be(true);
        }
Пример #2
0
        public async Task GetWorkOrderWithFlowShouldSucceed()
        {
            // Arrange
            var id                   = new Guid("76122118-5f89-4715-8360-c78d1fa95c1a");
            var jsonService          = new Mock <IJsonService <object> >().Object;
            var locationBuildService = new Mock <ILocationBuildService>().Object;

            var responseMessageGetFlow = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.OK,
                Content    = new StringContent("{\"count\":1,\"nextLink\":null,\"value\":[{\"id\":\"5fb3e62e-120d-49c7-8939-c0d7f93ee5ae\",\"name\":\"UpdatedName\",\"description\":\"Description\",\"image\":\"Image\",\"diagram\":\"diagram\",\"filterContent\":\"{}\",\"filter\":{\"sources\":[{\"name\":\"x\"}],\"operations\":[{\"name\":\"x\"}],\"sites\":[{\"name\":\"x\"}],\"operationalDepartments\":[{\"name\":\"x\"}],\"typePlannings\":[{\"name\":\"x\"}],\"customers\":[{\"name\":\"x\"}],\"productionSites\":[{\"name\":\"x\"}],\"transportTypes\":[{\"name\":\"x\"}],\"driverWait\":\"x\"}}]}")
            };
            var eccSetupRestApiMock = new Mock <IEccSetupRestApi>();

            eccSetupRestApiMock.Setup(x => x.GetFlow(It.IsAny <string>())).Returns(Task.FromResult(responseMessageGetFlow));
            var eccSetupRestApi = eccSetupRestApiMock.Object;

            var usersRestApi = new Mock <IUsersRestApi>().Object;

            var teamsRestApi = new Mock <ITeamsRestApi>().Object;

            var responseMessageGetOrder = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.OK,
                Content    = new StringContent("{\r\n    \"id\" : \"76122118-5f89-4715-8360-c78d1fa95c1a\"\r\n}")
            };

            responseMessageGetOrder.Headers.Add("ETag", "\"10000000\"");
            var responseMessageUpdateOrder = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.NoContent
            };

            responseMessageUpdateOrder.Headers.Add("If-Match", "\"10000000\"");
            var workOrdersRestApiMock = new Mock <IWorkOrdersRestApi>();

            workOrdersRestApiMock.Setup(x => x.GetOrder(It.IsAny <string>())).Returns(Task.FromResult(responseMessageGetOrder));
            workOrdersRestApiMock.Setup(x => x.UpdateOrderStatus(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult(responseMessageUpdateOrder));
            var workOrdersRestApi = workOrdersRestApiMock.Object;

            var filterString           = "source%20eq%20%27source%27%20and%20operation%20eq%20%27operation%27%20and%20site%20eq%20%27site%27%20and%20department%20eq%20%27operational%20department%27%20and%20type-planning%20eq%20%27Type%20planning%27%20and%20customer%20eq%20%27Customer%27%20and%20prodsite%20eq%20%27Production%20site%27%20and%20transport-type%20eq%20%27Transport%20type%27%20and%20driver-wait%20eq%20%27Yes%27";
            var filterBuildServiceMock = new Mock <IFilterBuildService>();

            filterBuildServiceMock.Setup(x => x.BuildFlowFilter(It.IsAny <FlowFilterFromBody>())).Returns(filterString);
            var filterBuildService = filterBuildServiceMock.Object;

            var filterMapper = new Mock <IFilterMapper>().Object;

            var mapper = new Mock <IMapper>().Object;

            var modelDtoConverter = new Mock <IModelDtoConverter>().Object;

            var mobileService = new MobileService(usersRestApi,
                                                  teamsRestApi,
                                                  eccSetupRestApi,
                                                  workOrdersRestApi,
                                                  filterMapper,
                                                  filterBuildService,
                                                  jsonService,
                                                  locationBuildService,
                                                  modelDtoConverter,
                                                  mapper);

            //Act
            var response = await mobileService.GetWorkOrderWithFlow(new StartOrderFromBody()
            {
                Id = id, Login = "******"
            });

            //Assert
            response.IsSuccess.Should().Be(true);
        }