public async Task OnPostNhsNumberDuplicates_ReturnsExpectedResponseForGroupedDuplicateNhsNumber() { // Arrange const int id = Utilities.PATIENT_GROUPED_NOTIFIED_NOTIFICATION_1_SHARED_NHS_NUMBER_1; const string nhsNumber = Utilities.NHS_NUMBER_SHARED_1; var initialPage = await Client.GetAsync(GetCurrentPathForId(id)); var initialDocument = await GetDocumentAsync(initialPage); var request = new NhsNumberValidationModel { NotificationId = id, NhsNumber = nhsNumber }; const int expectedWarningNotificationId = Utilities.PATIENT_NOTIFIED_NOTIFICATION_SHARED_NHS_NUMBER_1; var expectedWarningUrl = RouteHelper.GetNotificationPath(expectedWarningNotificationId, NotificationSubPaths.Overview); // Act var response = await Client.SendVerificationPostAsync( initialPage, initialDocument, GetHandlerPath(null, "NhsNumberDuplicates", Utilities.NOTIFIED_ID), request); // Assert var result = await response.Content.ReadAsStringAsync(); Assert.Contains($"\"{expectedWarningNotificationId}\":\"{expectedWarningUrl}\"", result); }
public async Task OnPostNhsNumberDuplicates_ReturnsEmptyResponseForDenotifiedDuplicateNhsNumber() { // Arrange const int id = Utilities.PATIENT_NOTIFIED_NOTIFICATION_1_SHARED_NHS_NUMBER_2; const string nhsNumber = Utilities.NHS_NUMBER_SHARED_2; var initialPage = await Client.GetAsync(GetCurrentPathForId(id)); var initialDocument = await GetDocumentAsync(initialPage); var request = new NhsNumberValidationModel { NotificationId = id, NhsNumber = nhsNumber }; // Act var response = await Client.SendVerificationPostAsync( initialPage, initialDocument, GetHandlerPath(null, "NhsNumberDuplicates", id), request); // Assert var result = await response.Content.ReadAsStringAsync(); Assert.Equal("{}", result); }
public async Task OnPostNhsNumberDuplicates_ReturnsResponseWithLegacyDuplicate() { // Arrange const int id = Utilities.NOTIFIED_ID; string nhsNumber = Utilities.NHS_NUMBER_LEGACY_DUPLICATE; var initialPage = await Client.GetAsync(GetCurrentPathForId(id)); var initialDocument = await GetDocumentAsync(initialPage); var request = new NhsNumberValidationModel { NotificationId = id, NhsNumber = nhsNumber }; // Act var response = await Client.SendVerificationPostAsync( initialPage, initialDocument, GetHandlerPath(null, "NhsNumberDuplicates", id), request); // Assert var result = await response.Content.ReadAsStringAsync(); Assert.Contains(Utilities.NHS_NUMBER_LEGACY_DUPLICATE_SOURCE + ": " + Utilities.NHS_NUMBER_LEGACY_DUPLICATE_ID, result); }
public async Task OnPostNhsNumberDuplicates_ReturnsExpectedEmptyResponseForNonDuplicate() { // Arrange const int id = Utilities.DRAFT_ID; const string nonDuplicateNhsNumber = "9876543219"; var initialPage = await Client.GetAsync(GetCurrentPathForId(id)); var initialDocument = await GetDocumentAsync(initialPage); var request = new NhsNumberValidationModel { NotificationId = id, NhsNumber = nonDuplicateNhsNumber }; // Act var response = await Client.SendVerificationPostAsync( initialPage, initialDocument, GetHandlerPath(null, "NhsNumberDuplicates", id), request); // Assert var result = await response.Content.ReadAsStringAsync(); Assert.Equal("{}", result); }
public async Task <JsonResult> OnPostNhsNumberDuplicates([FromBody] NhsNumberValidationModel validationData) { var group = await NotificationRepository.GetNotificationGroupAsync(validationData.NotificationId); return(new JsonResult(await GenerateDuplicateNhsNumberNotificationUrlsAsync(NotificationFieldFormattingHelper.FormatNhsNumberForModel(validationData.NhsNumber), group))); }