Skip to content

Commit 482cab6

Browse files
test: dtoss-5409 fix rule54 test failure (#1457)
* updated_DTOSS-5409_to_fix_regression_failure * set test to run smoke test on pipeline * updated_test_for_smoke_test * setting test to run smoke test on pipeline * test updated to remove smoke test dry run settings
1 parent 75320b4 commit 482cab6

7 files changed

Lines changed: 218 additions & 141 deletions

tests/playwright-tests/src/tests/e2e/epic3-medpriority-tests/epic3-med-priority-testsuite-migrated.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,4 @@
2626

2727
export const runnerBasedEpic3MedTestScenariosAdd = "@DTOSS-4967-01|@DTOSS-4975-01|@DTOSS-6325-01|@DTOSS-5374-01|@DTOSS-6320-01|@DTOSS-5578-01|@DTOSS-5582-01"
2828

29-
export const runnerBasedEpic3MedTestScenariosAmend = "@DTOSS-5286-01|@DTOSS-5579-01|@DTOSS-5799-01|@DTOSS-5800-01|@DTOSS-5583-01|@DTOSS-5409-01"
29+
export const runnerBasedEpic3MedTestScenariosAmend = "@DTOSS-5286-01|@DTOSS-5579-01|@DTOSS-5799-01|@DTOSS-5800-01|@DTOSS-5583-01"

tests/playwright-tests/src/tests/e2e/epic3-medpriority-tests/epic3-med-priority-testsuite.spec.ts

Lines changed: 46 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,11 @@ import { expect, test } from '../../fixtures/test-fixtures';
44
import { validateSqlDatabaseFromAPI } from "../../steps/steps";
55
import { getRecordsFromCohortDistributionService } from '../../../api/dataService/cohortDistributionService';
66
import { TestHooks } from '../../hooks/test-hooks';
7+
import { testWithAmended, testWithTwoAmendments } from '../../fixtures/test-fixtures';
8+
import { processFileViaStorage, verifyBlobExists } from "../../steps/steps";
79

810

9-
test.describe('@regression @e2e @epic3-med-priority Tests', () => {
11+
test.describe('@regression @e2e @epic3-med Tests', () => {
1012

1113
TestHooks.setupAddTestHooks();
1214
test('@DTOSS-5561-01 @not-runner-based @bs-select - CohortDistribution_Requesting data from Cohort Manager and set record to extracted and add the request ID to the data table', {
@@ -75,7 +77,49 @@ test.describe('@regression @e2e @epic3-med-priority Tests', () => {
7577

7678
});
7779

78-
});
80+
testWithTwoAmendments('@DTOSS-5409-01 @not-runner-based @bs-select Provide Cohort to BS Select - Transformation_RFR_Rule_4_RDR', {
81+
/*
82+
Note: To be able to test Rule4 validation successfully, Rule54 must be prevented by setting IgnoreParticipantException to true.
83+
As a workaround for test, the expectation for validation should be as below.
84+
85+
"RuleId":54,
86+
"RuleDescription":"ValidateBsoCode"
7987
88+
And should be replace with below with the new solution in the AMENDED2 Test File.
8089
90+
"RuleId":0,
91+
"RuleDescription":"4.ParticipantNotRegisteredToGPWithReasonForRemoval"
92+
*/
8193

94+
annotation: {
95+
type: 'Requirement',
96+
description: 'Tests - https://nhsd-jira.digital.nhs.uk/browse/DTOSS-4577',
97+
},
98+
}, async ({ request, testData }) => {
99+
await test.step(`When ADD participant is processed via storage`, async () => {
100+
await processFileViaStorage(testData.runTimeParquetFileAdd);
101+
});
102+
103+
await test.step(`Then ADD record should be updated in the cohort`, async () => {
104+
await validateSqlDatabaseFromAPI(request, testData.checkInDatabaseAdd);
105+
});
106+
107+
await test.step(`When same ADD participant record is AMENDED via storage for ${testData.nhsNumberAmend}`, async () => {
108+
await processFileViaStorage(testData.runTimeParquetFileAmend);
109+
});
110+
111+
await test.step(`Then the record should end up in exception management`, async () => {
112+
await validateSqlDatabaseFromAPI(request, testData.checkInDatabaseAmend);
113+
});
114+
115+
await test.step(`When same ADD participant record is AMENDED via storage for ${testData.nhsNumberAmend}`, async () => {
116+
await processFileViaStorage(testData.runTimeParquetFileSecondAmend);
117+
});
118+
119+
await test.step(`Then the record should end up in exception management`, async () => {
120+
await validateSqlDatabaseFromAPI(request, testData.checkInDatabaseSecondAmend);
121+
});
122+
123+
});
124+
125+
});
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
{
2+
"validations": [
3+
{
4+
"validations": {
5+
"apiEndpoint": "api/CohortDistributionDataService",
6+
"NHSNumber":9997322886,
7+
"expectedCount": 1
8+
}
9+
}
10+
],
11+
"inputParticipantRecord": [
12+
{
13+
"record_type": "ADD",
14+
"change_time_stamp": null,
15+
"serial_change_number": 1,
16+
"nhs_number": 9997322886,
17+
"superseded_by_nhs_number": null,
18+
"primary_care_provider": "E85121",
19+
"primary_care_effective_from_date": "20130319",
20+
"current_posting": "DMS",
21+
"current_posting_effective_from_date": "20130319",
22+
"name_prefix": "A.ML",
23+
"given_name": "NewTest1",
24+
"other_given_name": "Test",
25+
"family_name": "Adani1",
26+
"previous_family_name": "Test2",
27+
"date_of_birth": "19700101",
28+
"gender": 1,
29+
"address_line_1": "247 SpaightSpaightSpTeeeeeeest Road",
30+
"address_line_2": "Eastbourne",
31+
"address_line_3": "Test",
32+
"address_line_4": "Chelmsford",
33+
"address_line_5": "United Kingdom",
34+
"postcode": "B20 1AF",
35+
"paf_key": "Z3S4Q5X8",
36+
"address_effective_from_date": "20240501",
37+
"reason_for_removal": null,
38+
"reason_for_removal_effective_from_date": null,
39+
"date_of_death": null,
40+
"death_status": null,
41+
"home_telephone_number": "01619999999",
42+
"home_telephone_effective_from_date": "20240501",
43+
"mobile_telephone_number": "07888888888",
44+
"mobile_telephone_effective_from_date": "20240501",
45+
"email_address": "bturneux0@soup.io",
46+
"email_address_effective_from_date": "20240501",
47+
"preferred_language": "en",
48+
"is_interpreter_required": false,
49+
"invalid_flag": false,
50+
"eligibility": true
51+
}
52+
],
53+
"nhsNumbers": [
54+
"9997322886"
55+
]
56+
}

tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-5409-01/ADD_CAAS_BREAST_SCREENING_COHORT.json

Lines changed: 0 additions & 62 deletions
This file was deleted.
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
{
2+
"validations": [
3+
{
4+
"validations": {
5+
"apiEndpoint": "api/CohortDistributionDataService",
6+
"NHSNumber":9997322886,
7+
"PrimaryCareProvider": null,
8+
"ReasonForRemoval": "SDN",
9+
"expectedCount": 2
10+
}
11+
}
12+
],
13+
"inputParticipantRecord": [
14+
{
15+
"record_type": "AMENDED",
16+
"change_time_stamp": null,
17+
"serial_change_number": 2,
18+
"nhs_number": 9997322886,
19+
"superseded_by_nhs_number": null,
20+
"primary_care_provider": null,
21+
"primary_care_effective_from_date": null,
22+
"current_posting": "DMS",
23+
"current_posting_effective_from_date": "20130319",
24+
"name_prefix": "A.ML",
25+
"given_name": "NewTest1",
26+
"other_given_name": "Test",
27+
"family_name": "Adani1",
28+
"previous_family_name": "Test2",
29+
"date_of_birth": "19710101",
30+
"gender": 1,
31+
"address_line_1": "247 SpaightSpaightSpTeeeeeeest Road",
32+
"address_line_2": "Eastbourne",
33+
"address_line_3": "Test",
34+
"address_line_4": "Chelmsford",
35+
"address_line_5": "United Kingdom",
36+
"postcode": "B20 1AF",
37+
"paf_key": "Z3S4Q5X8",
38+
"address_effective_from_date": "20240501",
39+
"reason_for_removal": "SDN",
40+
"reason_for_removal_effective_from_date": "20250801",
41+
"date_of_death": null,
42+
"death_status": null,
43+
"home_telephone_number": "016199999990",
44+
"home_telephone_effective_from_date": "20240501",
45+
"mobile_telephone_number": "07888888888",
46+
"mobile_telephone_effective_from_date": "20240501",
47+
"email_address": "bturneux0@soup.io",
48+
"email_address_effective_from_date": "20240501",
49+
"preferred_language": "en",
50+
"is_interpreter_required": false,
51+
"invalid_flag": false,
52+
"eligibility": true
53+
}
54+
],
55+
"nhsNumbers": [
56+
"9997322886"
57+
]
58+
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
{
2+
"validations": [
3+
{
4+
"validations": {
5+
"apiEndpoint": "api/ExceptionManagementDataService",
6+
"NhsNumber":"9997322886",
7+
"RuleId":54,
8+
"RuleDescription":"ValidateBsoCode"
9+
}
10+
}
11+
],
12+
"inputParticipantRecord": [
13+
{
14+
"record_type": "AMENDED",
15+
"change_time_stamp": null,
16+
"serial_change_number": 3,
17+
"nhs_number": 9997322886,
18+
"superseded_by_nhs_number": null,
19+
"primary_care_provider": null,
20+
"primary_care_effective_from_date": null,
21+
"current_posting": "DMS",
22+
"current_posting_effective_from_date": "20130319",
23+
"name_prefix": "A.ML",
24+
"given_name": "NewTest1",
25+
"other_given_name": "Test",
26+
"family_name": "Adani1",
27+
"previous_family_name": "Test2",
28+
"date_of_birth": "19710101",
29+
"gender": 1,
30+
"address_line_1": "247 SpaightSpaightSpTeeeeeeest Road",
31+
"address_line_2": "Eastbourne",
32+
"address_line_3": "Test",
33+
"address_line_4": "Chelmsford",
34+
"address_line_5": "United Kingdom",
35+
"postcode": null,
36+
"paf_key": "Z3S4Q5X8",
37+
"address_effective_from_date": "20240501",
38+
"reason_for_removal": "RDR",
39+
"reason_for_removal_effective_from_date": "20250802",
40+
"date_of_death": null,
41+
"death_status": null,
42+
"home_telephone_number": "016199999990",
43+
"home_telephone_effective_from_date": "20240501",
44+
"mobile_telephone_number": "07888888888",
45+
"mobile_telephone_effective_from_date": "20240501",
46+
"email_address": "bturneux0@soup.io",
47+
"email_address_effective_from_date": "20240501",
48+
"preferred_language": "en",
49+
"is_interpreter_required": false,
50+
"invalid_flag": false,
51+
"eligibility": true
52+
}
53+
],
54+
"nhsNumbers": [
55+
"9997322886"
56+
]
57+
}

tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-5409-01/AMENDED_CAAS_BREAST_SCREENING_COHORT.json

Lines changed: 0 additions & 76 deletions
This file was deleted.

0 commit comments

Comments
 (0)