Esempio n. 1
0
        public void TestRequestTypes()
        {
            var request = new GetValues.Request();

            Assert.True(request is IRequest);
            Assert.True(request is IRequest <GetValues.Response>);
        }
        public async Task <ActionResult <GetValues.Response> > GetValues(string param1, string param2)
        {
            var request = new GetValues.Request {
                Param1 = param1, Param2 = param2
            };

            return(await mediator.Send <GetValues.Response>(request));
        }
Esempio n. 3
0
 public void Test_ValidatorValidatesIfParam2IsNotNullAndNotEmpty(string value, bool isValid)
 {
     request = new GetValues.Request
     {
         Param1 = "12345678",
         Param2 = value
     };
     Assert.Equal(isValid, validator.Validate(request).IsValid);
 }
Esempio n. 4
0
 public void Test_ValidatorValidatesIfParam1Of8Digits(string value, bool isValid)
 {
     request = new GetValues.Request
     {
         Param1 = value,
         Param2 = "1234"
     };
     Assert.Equal(isValid, validator.Validate(request).IsValid);
 }
Esempio n. 5
0
 public Given_a_GetValues_Request()
 {
     validator = new GetValues.Validator();
     request   = new GetValues.Request
     {
         Param1 = "12345678",
         Param2 = "1234"
     };
 }
Esempio n. 6
0
        public void TestRequestProperties()
        {
            var request = new GetValues.Request();

            Assert.NotNull(request.GetType().GetProperty("Param1"));
            Assert.Equal("String", request.GetType().GetProperty("Param1").PropertyType.Name);

            Assert.NotNull(request.GetType().GetProperty("Param2"));
            Assert.Equal("String", request.GetType().GetProperty("Param2").PropertyType.Name);
        }
Esempio n. 7
0
        public async void Test_HandleReturnsCorrectResponse()
        {
            var handler = new GetValues.Handler();
            var request = new GetValues.Request {
                Param1 = "param1", Param2 = "param2"
            };
            var response = await handler.Handle(request, new CancellationToken());

            Assert.Equal(JsonConvert.SerializeObject(request), response.Result);
        }
        public void Test_ValidatorValidatesIfParam2IsNotNullAndNotEmpty(string value, bool isValid)
        {
            //Arrange
            request = new GetValues.Request
            {
                Values = new Values
                {
                    Param1 = "12345678",
                    Param2 = value
                }
            };

            //Act and Assert
            Assert.Equal(isValid, validator.Validate(request).IsValid);
        }
        public void Test_ValidatorValidatesIfParam1Of8Digits(string value, bool isValid)
        {
            //Arrange
            request = new GetValues.Request
            {
                Values = new Values
                {
                    Param1 = value,
                    Param2 = "1234"
                }
            };

            //Act and Assert
            Assert.Equal(isValid, validator.Validate(request).IsValid);
        }
        public void Test_BinderShouldCreateTheModelIfRouteDataIsValid()
        {
            var binder = new ValuesRequestBinder();

            var bindingContext = new ModelBindingContextStub();

            bindingContext.ActionContext.RouteData.Values["param1"] = "12345678";
            bindingContext.ActionContext.RouteData.Values["param2"] = "123";

            binder.BindModelAsync(bindingContext);

            var expectedModel = new GetValues.Request()
            {
                Param1 = "12345678", Param2 = "123"
            };

            bindingContext.Result.Model.Should().BeEquivalentTo(expectedModel);
        }
        public Task BindModelAsync(ModelBindingContext bindingContext)
        {
            try
            {
                var model = new GetValues.Request
                {
                    Param1 = (string)bindingContext.ActionContext.RouteData.Values["param1"],
                    Param2 = (string)bindingContext.ActionContext.RouteData.Values["param2"]
                };

                bindingContext.Result = ModelBindingResult.Success(model);
                return(Task.CompletedTask);
            }
            catch (Exception exception)
            {
                bindingContext.Result = ModelBindingResult.Failed();
                return(Task.FromException(exception));
            }
        }
Esempio n. 12
0
        public async void Test_GetValues_Returns_CorrectResponse_If_Mediator()
        {
            //Arrange
            var request = new GetValues.Request {
                Values = new Values {
                    Param1 = "12345678", Param2 = "123"
                }
            };

            mediator.Setup(m => m.Send(It.IsAny <IRequest <GetValues.Response> >(), default))
            .Returns(Task.FromResult(new GetValues.Response {
                Result = JsonConvert.SerializeObject(new { request.Values.Param1, request.Values.Param2 })
            }));

            var controller = new ValuesController(mediator.Object);

            //Act
            var response = await controller.GetValues(request.Values.Param1, request.Values.Param2);

            //Assert
            Assert.IsType <ActionResult <GetValues.Response> >(response);
            Assert.Equal(JsonConvert.SerializeObject(new { request.Values.Param1, request.Values.Param2 }), response.Value.Result);
        }