public void CreatePatch()
        {
            var mapper = new ApiEmployeeModelMapper();
            var model  = new ApiEmployeeRequestModel();

            model.SetProperties(DateTime.Parse("1/1/1987 12:00:00 AM"), true, "A", DateTime.Parse("1/1/1987 12:00:00 AM"), "A", "A", "A", DateTime.Parse("1/1/1987 12:00:00 AM"), "A", 1, Guid.Parse("8420cdcf-d595-ef65-66e7-dff9f98764da"), true, 1, 1);

            JsonPatchDocument <ApiEmployeeRequestModel> patch = mapper.CreatePatch(model);
            var response = new ApiEmployeeRequestModel();

            patch.ApplyTo(response);
            response.BirthDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM"));
            response.CurrentFlag.Should().Be(true);
            response.Gender.Should().Be("A");
            response.HireDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM"));
            response.JobTitle.Should().Be("A");
            response.LoginID.Should().Be("A");
            response.MaritalStatu.Should().Be("A");
            response.ModifiedDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM"));
            response.NationalIDNumber.Should().Be("A");
            response.OrganizationLevel.Should().Be(1);
            response.Rowguid.Should().Be(Guid.Parse("8420cdcf-d595-ef65-66e7-dff9f98764da"));
            response.SalariedFlag.Should().Be(true);
            response.SickLeaveHour.Should().Be(1);
            response.VacationHour.Should().Be(1);
        }
        public void MapResponseToRequest()
        {
            var mapper = new ApiEmployeeModelMapper();
            var model  = new ApiEmployeeResponseModel();

            model.SetProperties(1, "A", true, true, "A");
            ApiEmployeeRequestModel response = mapper.MapResponseToRequest(model);

            response.FirstName.Should().Be("A");
            response.IsSalesPerson.Should().Be(true);
            response.IsShipper.Should().Be(true);
            response.LastName.Should().Be("A");
        }
        public async void TestUpdate()
        {
            var model = await this.CreateRecord();

            ApiEmployeeModelMapper mapper = new ApiEmployeeModelMapper();

            UpdateResponse <ApiEmployeeResponseModel> updateResponse = await this.Client.EmployeeUpdateAsync(model.Id, mapper.MapResponseToRequest(model));

            updateResponse.Record.Should().NotBeNull();
            updateResponse.Success.Should().BeTrue();

            await this.Cleanup();
        }
        public void CreatePatch()
        {
            var mapper = new ApiEmployeeModelMapper();
            var model  = new ApiEmployeeRequestModel();

            model.SetProperties("A", true, true, "A");

            JsonPatchDocument <ApiEmployeeRequestModel> patch = mapper.CreatePatch(model);
            var response = new ApiEmployeeRequestModel();

            patch.ApplyTo(response);
            response.FirstName.Should().Be("A");
            response.IsSalesPerson.Should().Be(true);
            response.IsShipper.Should().Be(true);
            response.LastName.Should().Be("A");
        }
        public async void TestUpdate()
        {
            var builder = new WebHostBuilder()
                          .UseEnvironment("Production")
                          .UseStartup <TestStartup>();
            TestServer testServer = new TestServer(builder);

            var client = new ApiClient(testServer.CreateClient());

            ApiEmployeeResponseModel model = await client.EmployeeGetAsync(1);

            ApiEmployeeModelMapper mapper = new ApiEmployeeModelMapper();

            UpdateResponse <ApiEmployeeResponseModel> updateResponse = await client.EmployeeUpdateAsync(model.BusinessEntityID, mapper.MapResponseToRequest(model));

            updateResponse.Record.Should().NotBeNull();
            updateResponse.Success.Should().BeTrue();
        }
        public void MapRequestToResponse()
        {
            var mapper = new ApiEmployeeModelMapper();
            var model  = new ApiEmployeeRequestModel();

            model.SetProperties(DateTime.Parse("1/1/1987 12:00:00 AM"), true, "A", DateTime.Parse("1/1/1987 12:00:00 AM"), "A", "A", "A", DateTime.Parse("1/1/1987 12:00:00 AM"), "A", 1, Guid.Parse("8420cdcf-d595-ef65-66e7-dff9f98764da"), true, 1, 1);
            ApiEmployeeResponseModel response = mapper.MapRequestToResponse(1, model);

            response.BirthDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM"));
            response.BusinessEntityID.Should().Be(1);
            response.CurrentFlag.Should().Be(true);
            response.Gender.Should().Be("A");
            response.HireDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM"));
            response.JobTitle.Should().Be("A");
            response.LoginID.Should().Be("A");
            response.MaritalStatu.Should().Be("A");
            response.ModifiedDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM"));
            response.NationalIDNumber.Should().Be("A");
            response.OrganizationLevel.Should().Be(1);
            response.Rowguid.Should().Be(Guid.Parse("8420cdcf-d595-ef65-66e7-dff9f98764da"));
            response.SalariedFlag.Should().Be(true);
            response.SickLeaveHour.Should().Be(1);
            response.VacationHour.Should().Be(1);
        }