public void given_a_processRef_when_getprocessdata_method_is_called_it_then_calls_the_use_case_with_request_object_containing_that_processRef()
        {
            //arrange
            string processRef = faker.Random.Guid().ToString();
            var    request    = new GetProcessDataRequest {
                processRef = processRef
            };
            var response = new GetProcessDataResponse(request, new MatProcessData(), DateTime.Now);

            _mockUsecase.Setup(x => x.ExecuteGet(It.Is <GetProcessDataRequest>(i => i.processRef == processRef))).Returns(response);
            _mockValidatorGet.Setup(x => x.Validate(It.IsAny <GetProcessDataRequest>())).Returns(new FV.ValidationResult());

            //act
            _processDataController.GetProcessData(request);
            //assert
            _mockUsecase.Verify(x => x.ExecuteGet((It.Is <GetProcessDataRequest>(i => i.processRef == processRef))));
        }
        public void given_a_processRef_when_getprocessdata_method_is_called_the_controller_returns_correct_json_response()
        {
            //arange
            string processRef = faker.Random.Guid().ToString();
            var    request    = new GetProcessDataRequest()
            {
                processRef = processRef
            };
            var response = new GetProcessDataResponse(request, new MatProcessData(), DateTime.Now);

            _mockUsecase.Setup(x => x.ExecuteGet(It.Is <GetProcessDataRequest>(i => i.processRef == processRef))).Returns(response);
            //act
            var actualResponse = _processDataController.GetProcessData(request);
            var okResult       = (OkObjectResult)actualResponse;
            var resultContent  = (GetProcessDataResponse)okResult.Value;

            //assert
            Assert.NotNull(actualResponse);
            Assert.NotNull(okResult);
            Assert.IsInstanceOf <GetProcessDataResponse>(resultContent);
            Assert.NotNull(resultContent);
            Assert.AreEqual(JsonConvert.SerializeObject(response), JsonConvert.SerializeObject(resultContent));
            Assert.AreEqual(200, okResult.StatusCode);
        }