Esempio n. 1
0
        public async Task PostAsync_SucceedsWithOverlappingPeriodsInDifferentInputSources()
        {
            //Arrange
            var request = new NoticePayCompositeCalculationRequestModel()
            {
                Cnp  = null,
                Nwnp = new List <NoticeWorkedNotPaidCalculationRequestModel>()
                {
                    new NoticeWorkedNotPaidCalculationRequestModel()
                    {
                        InputSource         = InputSource.Rp1,
                        EmploymentStartDate = new DateTime(2015, 8, 2),
                        InsolvencyDate      = new DateTime(2018, 7, 20),
                        DateNoticeGiven     = new DateTime(2018, 7, 20),
                        DismissalDate       = new DateTime(2018, 7, 20),
                        UnpaidPeriodFrom    = new DateTime(2018, 7, 1),
                        UnpaidPeriodTo      = new DateTime(2018, 7, 8),
                        WeeklyWage          = 320,
                        ShiftPattern        = new List <string> {
                            "1", "2", "3", "4", "5"
                        },
                        PayDay    = 6,
                        IsTaxable = true
                    },
                    new NoticeWorkedNotPaidCalculationRequestModel()
                    {
                        InputSource         = InputSource.Rp14a,
                        EmploymentStartDate = new DateTime(2015, 8, 2),
                        InsolvencyDate      = new DateTime(2018, 7, 20),
                        DateNoticeGiven     = new DateTime(2018, 7, 20),
                        DismissalDate       = new DateTime(2018, 7, 20),
                        UnpaidPeriodFrom    = new DateTime(2018, 7, 8),
                        UnpaidPeriodTo      = new DateTime(2018, 7, 10),
                        WeeklyWage          = 320,
                        ShiftPattern        = new List <string> {
                            "1", "2", "3", "4", "5"
                        },
                        PayDay    = 6,
                        IsTaxable = true
                    }
                }
            };

            var response = NoticeControllerTestsDataGenerator.GetValidResponseData();

            _service.Setup(m => m.PerformNoticePayCompositeCalculationAsync(request, _confOptions)).ReturnsAsync(response);
            var controller = new NoticeController(_service.Object, _mockLogger.Object, _confOptions);

            //Act
            var result = await controller.PostAsync(request);

            //Assert
            var okObjectRequest = result.Should().BeOfType <OkObjectResult>().Subject;

            okObjectRequest.StatusCode.Should().Be((int)System.Net.HttpStatusCode.OK);
        }
Esempio n. 2
0
        public async Task PostAsync_Succeeds()
        {
            //Arrange
            var request  = NoticeControllerTestsDataGenerator.GetValidRequestData();
            var response = NoticeControllerTestsDataGenerator.GetValidResponseData();

            _service.Setup(m => m.PerformNoticePayCompositeCalculationAsync(request, _confOptions)).ReturnsAsync(response);
            var controller = new NoticeController(_service.Object, _mockLogger.Object, _confOptions);

            //Act
            var result = await controller.PostAsync(request);

            //Assert
            var okObjectRequest = result.Should().BeOfType <OkObjectResult>().Subject;

            okObjectRequest.StatusCode.Should().Be((int)System.Net.HttpStatusCode.OK);
        }