Esempio n. 1
0
        public async Task IfDateTooEarly_ValidateTestResultForEditDate_ReturnsEarliestDateErrorMessage(bool isEdit)
        {
            // Arrange
            const int notificationId      = Utilities.NOTIFICATION_WITH_MANUAL_TESTS;
            var       notificationSubPath = isEdit ? NotificationSubPaths.EditManualTestResult(10) : NotificationSubPaths.AddManualTestResult;
            var       url         = GetPathForId($"{notificationSubPath}", notificationId, null);
            var       initialPage = await Client.GetAsync(url);

            var initialDocument = await GetDocumentAsync(initialPage);

            var request = new DateValidationModel
            {
                Key   = "TestDate",
                Day   = "1",
                Month = "1",
                Year  = "1899"
            };
            const string handlerPath = "ValidateTestResultForEditDate";
            var          endpointUrl = $"{url}/{handlerPath}";

            // Act
            var response = await Client.SendVerificationPostAsync(
                initialPage,
                initialDocument,
                endpointUrl,
                request);

            // Assert
            var result = await response.Content.ReadAsStringAsync();

            Assert.Equal(ValidationMessages.DateValidityRangeStart("Test date", "01/01/2010"), result);
        }
        public async Task IfDateTooEarly_ValidatePatientDate_ReturnsEarliestBirthDateErrorMessage()
        {
            // Arrange
            var initialPage = await Client.GetAsync(GetCurrentPathForId(Utilities.NOTIFIED_ID));

            var initialDocument = await GetDocumentAsync(initialPage);

            var request = new DateValidationModel
            {
                Key   = "Dob",
                Day   = "1",
                Month = "1",
                Year  = "1899"
            };

            // Act
            var response = await Client.SendVerificationPostAsync(
                initialPage,
                initialDocument,
                GetHandlerPath(null, "ValidatePatientDetailsDate", Utilities.NOTIFIED_ID),
                request);

            // Assert
            var result = await response.Content.ReadAsStringAsync();

            Assert.Equal("Date of birth must not be before 01/01/1900", result);
        }
        public async Task <ContentResult> OnPostValidateNotificationDateAsync([FromBody] DateValidationModel validationData)
        {
            // Query notification by Id when date validation depends on other properties of model
            var notification = await NotificationRepository.GetNotificationAsync(validationData.NotificationId);

            return(ValidationService.GetDateValidationResult(notification, validationData.Key, validationData.Day, validationData.Month, validationData.Year));
        }
        public async Task IfInvalidDate_ValidateClinicalDetailsDate_ReturnsValidDateErrorMessage()
        {
            // Arrange
            var initialPage = await Client.GetAsync(GetCurrentPathForId(Utilities.NOTIFIED_ID));

            var initialDocument = await GetDocumentAsync(initialPage);

            var request = new DateValidationModel
            {
                Key   = "DiagnosisDate",
                Day   = "1",
                Month = "0",
                Year  = "2009"
            };

            // Act
            var response = await Client.SendVerificationPostAsync(
                initialPage,
                initialDocument,
                GetHandlerPath(null, "ValidateClinicalDetailsDate", Utilities.NOTIFIED_ID),
                request);

            // Assert
            var result = await response.Content.ReadAsStringAsync();

            Assert.Equal("Diagnosis date does not have a valid date selection", result);
        }
Esempio n. 5
0
        public async Task <ContentResult> OnPostValidateTransferRequestDate([FromBody] DateValidationModel validationData)
        {
            Notification = await NotificationRepository.GetNotificationAsync(NotificationId);

            var transferRequest = new TransferViewModel();

            SetDatesOnRequestForValidation(transferRequest);
            return(ValidationService.GetDateValidationResult(transferRequest, validationData.Key, validationData.Day, validationData.Month, validationData.Year));
        }
        public async Task <ContentResult> OnPostValidateTransferRequestDate([FromBody] DateValidationModel validationData)
        {
            await GetNotificationAndSetValuesForValidation();

            var transferWithValidationData = new TransferViewModel
            {
                NotificationStartDate = TransferRequest.NotificationStartDate,
                LatestTransferDate    = TransferRequest.LatestTransferDate
            };

            return(ValidationService.GetDateValidationResult(transferWithValidationData, validationData.Key, validationData.Day, validationData.Month, validationData.Year));
        }
        public async Task <ContentResult> OnPostValidateMDRDetailsDate([FromBody] DateValidationModel validationData)
        {
            var isLegacy = await NotificationRepository.IsNotificationLegacyAsync(NotificationId);

            return(ValidationService.GetDateValidationResult <MDRDetails>(validationData.Key, validationData.Day, validationData.Month, validationData.Year, isLegacy));
        }