Пример #1
0
        public void CaseDatesModel_NoticeReceivedAfterFirstHearing()
        {
            // Arrange
            var sut = new CaseDatesModel
            {
                CaseId           = 1,
                NoticeReceivedOn = DateTime.Now.AddDays(1),
                FirstHearingOn   = DateTime.Now.AddDays(-1)
            };
            var context = new ValidationContext(sut, null, null);

            // Act
            var results           = new List <ValidationResult>();
            var isModelStateValid = Validator.TryValidateObject(sut, context, results, true);

            // Assert
            Assert.False(isModelStateValid);
            Assert.Single(results);
            foreach (var item in results)
            {
                Assert.Equal("First Hearing Date cannot be before the date on which Notice was received", item.ErrorMessage);
                Assert.Single(item.MemberNames);
                Assert.Contains("NoticeReceivedOn", item.MemberNames);
            }
        }
Пример #2
0
        public async Task RetrieveAsync_Valid()
        {
            // Arrange
            int            caseId      = 1;
            SqlParamsModel queryParams = GetParams_RetrieveAsync(caseId);
            CaseDatesModel expected    = GetSampleData(caseId);

            _mockDataAccess.QueryFirstOrDefaultAsync <CaseDatesModel>(default).ReturnsForAnyArgs(expected);
Пример #3
0
        private static bool IsEqual(CaseDatesModel expected, CaseDatesModel actual)
        {
            bool isEqual = expected.CaseId == actual.CaseId &&
                           expected.CaseFiledOn == actual.CaseFiledOn &&
                           expected.NoticeReceivedOn == actual.NoticeReceivedOn &&
                           expected.FirstHearingOn == actual.FirstHearingOn;

            return(isEqual);
        }
Пример #4
0
        public async Task <IActionResult> UpdateCaseDateDetails(CaseDatesModel caseDatesModel)
        {
            if (ModelState.IsValid == false)
            {
                return(ValidationProblem());
            }
            int currUser = _sessionService.GetUserId(HttpContext);
            await _caseDatesService.UpdateAsync(caseDatesModel, currUser);

            return(NoContent());
        }
Пример #5
0
        private static CaseDatesModel GetSampleData(int caseId)
        {
            var result = new CaseDatesModel
            {
                CaseId           = caseId,
                CaseFiledOn      = DateTime.Today,
                NoticeReceivedOn = DateTime.Today,
                FirstHearingOn   = DateTime.Today.AddDays(1)
            };

            return(result);
        }
Пример #6
0
        public async Task UpdateCaseDateDetails_ValidationProblem()
        {
            // Arrange
            int            caseId        = 1;
            CaseDatesModel caseDateModel = GetSampleData(caseId);

            _sut.ModelState.AddModelError("Field", "Sample Error Details");

            // Act
            await _sut.UpdateCaseDateDetails(caseDateModel);

            // Assert
            _mockSessionService.DidNotReceiveWithAnyArgs().GetUserId(default);
Пример #7
0
        public async Task <ActionResult <CaseDatesModel> > GetCaseDateDetails(int caseId)
        {
            if (caseId < 1)
            {
                return(UnprocessableEntity($"Invalid CaseId: {caseId}"));
            }
            CaseDatesModel caseDates = await _caseDatesService.RetrieveAsync(caseId);

            if (caseDates is null)
            {
                return(NotFound());
            }
            return(Ok(caseDates));
        }
Пример #8
0
        public async Task UpdateAsync(CaseDatesModel caseDatesModel, int currUser)
        {
            var sqlModel = new SqlParamsModel
            {
                Sql        = "pkg_case_dates.p_update_case_dates",
                Parameters = new OracleDynamicParameters()
            };

            sqlModel.Parameters.Add("pi_case_id", caseDatesModel.CaseId, dbType: OracleMappingType.Int32, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_case_filed_on", caseDatesModel.CaseFiledOn, dbType: OracleMappingType.Date, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_notice_received_on", caseDatesModel.NoticeReceivedOn, dbType: OracleMappingType.Date, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_first_hearing_on", caseDatesModel.FirstHearingOn, dbType: OracleMappingType.Date, ParameterDirection.Input);
            sqlModel.Parameters.Add("pi_update_by", currUser, dbType: OracleMappingType.Int32, ParameterDirection.Input);

            await _dataAccess.ExecuteAsync(sqlModel);
        }
Пример #9
0
        public async Task GetCaseDateDetails_NotFound()
        {
            // Arrange
            int            caseId   = 1;
            CaseDatesModel expected = null;

            _mockDatesService.RetrieveAsync(caseId).Returns(expected);

            // Act
            ActionResult <CaseDatesModel> response = await _sut.GetCaseDateDetails(caseId);

            // Assert
            await _mockDatesService.Received(1).RetrieveAsync(caseId);

            Assert.IsType <NotFoundResult>(response.Result);
        }
Пример #10
0
        public async Task GetCaseDateDetails_Valid()
        {
            // Arrange
            int            caseId   = 1;
            CaseDatesModel expected = GetSampleData(caseId);

            _mockDatesService.RetrieveAsync(caseId).Returns(expected);

            // Act
            ActionResult <CaseDatesModel> response = await _sut.GetCaseDateDetails(caseId);

            // Assert
            await _mockDatesService.Received(1).RetrieveAsync(caseId);

            var            createdAtActionResult = Assert.IsType <OkObjectResult>(response.Result);
            CaseDatesModel actual = (CaseDatesModel)createdAtActionResult.Value;

            Assert.True(actual is not null);
            Assert.Equal(expected.CaseId, actual.CaseId);
            Assert.Equal(expected.CaseFiledOn, actual.CaseFiledOn);
            Assert.Equal(expected.NoticeReceivedOn, actual.NoticeReceivedOn);
            Assert.Equal(expected.FirstHearingOn, actual.FirstHearingOn);
        }
Пример #11
0
 public Task <HttpResponseMessage> UpdateCaseDatesAsync(CaseDatesModel caseDates)
 {
     return(_http.PostAsJsonAsync($"{datesBaseUrl}", caseDates));
 }