Example #1
0
        public async Task CreateMyFoo_Valid_Created()
        {
            var createRequest = new CreateMyFooRequest
            {
                FirstName = "First name 1",
                LastName  = "Last name 1",
            };

            var createResponse = await Fixture.Api.MyFoos.CreateMyFooAsync(createRequest);

            Assert.Equal(HttpStatusCode.Created, createResponse.StatusCode);

            var createResponseContent = createResponse.Data;

            Assert.True(createResponseContent.Id > 0);

            Assert.Equal(createRequest.FirstName, createResponseContent.FirstName);
            Assert.Equal(createRequest.LastName, createResponseContent.LastName);

            var findRequest = new FindMyFooRequest {
                Id = createResponseContent.Id
            };

            var findResponse = await Fixture.Api.MyFoos.FindMyFooAsync(findRequest);

            Assert.Equal(HttpStatusCode.OK, findResponse.StatusCode);

            var findResponseContent = findResponse.Data;

            Assert.Equal(createResponseContent.Id, findResponseContent.Id);
            Assert.Equal(createRequest.FirstName, findResponseContent.FirstName);
            Assert.Equal(createRequest.LastName, findResponseContent.LastName);
        }
Example #2
0
        public async Task CreateMyFoo(MyFoo myFoo)
        {
            var request = new CreateMyFooRequest
            {
                FirstName = myFoo.FirstName,
                LastName  = myFoo.LastName,
            };

            await Service.CreateMyFooAsync(request);
        }
Example #3
0
        public async Task CreateMyFoo_InvalidRequest_ThrowsInvalidRequestException()
        {
            var createRequest = new CreateMyFooRequest
            {
                FirstName = null,
                LastName  = "Last name 1",
            };

            await Assert.ThrowsAsync <InvalidRequestException>(() => Fixture.MyFoos.CreateMyFooAsync(createRequest));
        }
Example #4
0
        public async Task CreateMyFoo_Invalid_UnprocessableEntity()
        {
            var createRequest = new CreateMyFooRequest
            {
                FirstName = null,
                LastName  = "Last name 1",
            };

            var createResponse = await Fixture.Api.MyFoos.CreateMyFooAsync(createRequest);

            Assert.Equal(HttpStatusCode.UnprocessableEntity, createResponse.StatusCode);

            var createResponseContent = createResponse.Data;

            var problemDetails = createResponse.ProblemDetails;

            Assert.Equal((int)HttpStatusCode.UnprocessableEntity, problemDetails.Status);
        }
Example #5
0
        public async Task CreateMyFoo_ValidRequest_ReturnsResponse()
        {
            var createRequest = new CreateMyFooRequest
            {
                FirstName = "First name 1",
                LastName  = "Last name 1",
            };

            var createResponse = await Fixture.MyFoos.CreateMyFooAsync(createRequest);

            Assert.True(createResponse.Id > 0);
            Assert.Equal(createRequest.FirstName, createResponse.FirstName);
            Assert.Equal(createRequest.LastName, createResponse.LastName);

            var findRequest = new FindMyFooRequest {
                Id = createResponse.Id
            };

            var findResponse = await Fixture.MyFoos.FindMyFooAsync(findRequest);

            Assert.Equal(findRequest.Id, findResponse.Id);
            Assert.Equal(createRequest.FirstName, findResponse.FirstName);
            Assert.Equal(createRequest.LastName, findResponse.LastName);
        }
Example #6
0
        public async Task <ActionResult <CreateMyFooResponse> > CreateMyFooAsync(CreateMyFooRequest request)
        {
            var response = await Service.CreateMyFooAsync(request);

            return(CreatedAtRoute("find-my-foo", new { id = response.Id }, response));
        }
Example #7
0
 public Task <IObjectClientResponse <CreateMyFooResponse> > CreateMyFooAsync(CreateMyFooRequest request)
 {
     return(Client.PostAsync <CreateMyFooRequest, CreateMyFooResponse>(request));
 }
Example #8
0
 public Task <CreateMyFooResponse> CreateMyFooAsync(CreateMyFooRequest request)
 {
     return(HandleAsync <CreateMyFooRequest, CreateMyFooResponse>(request));
 }