diff --git a/application/CohortManager/compose.cohort-distribution.yaml b/application/CohortManager/compose.cohort-distribution.yaml index 696470e212..3345a47227 100644 --- a/application/CohortManager/compose.cohort-distribution.yaml +++ b/application/CohortManager/compose.cohort-distribution.yaml @@ -76,6 +76,7 @@ services: - BsSelectGpPracticeUrl=http://reference-data-service:7988/api/BsSelectGpPractice - DtOsDatabaseConnectionString=Server=db,1433;Database=${DB_NAME};User Id=SA;Password=${PASSWORD};TrustServerCertificate=True - LanguageCodeUrl=http://reference-data-service:7988/api/LanguageCode + - CurrentPostingUrl=http://reference-data-service:7988/api/CurrentPosting - ExcludedSMULookupUrl=http://reference-data-service:7988/api/ExcludedSMU - AcceptableLatencyThresholdMs=500 diff --git a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/ITransformDataLookupFacade.cs b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/ITransformDataLookupFacade.cs index d3ca5bd706..149a36e67d 100644 --- a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/ITransformDataLookupFacade.cs +++ b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/ITransformDataLookupFacade.cs @@ -9,4 +9,5 @@ public interface ITransformDataLookupFacade public string GetBsoCodeUsingPCP(string primaryCareProvider); public bool ValidateLanguageCode(string languageCode); public Task> GetCachedExcludedSMUValues(); + string RetrievePostingCategory(string currentPosting); } diff --git a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/Program.cs b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/Program.cs index 4f85fda8a5..7e1c4c631f 100644 --- a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/Program.cs +++ b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/Program.cs @@ -17,6 +17,7 @@ .AddDataServiceStaticCachedClient(config.BsSelectGpPracticeUrl) .AddDataServiceStaticCachedClient(config.LanguageCodeUrl) .AddDataServiceStaticCachedClient(config.ExcludedSMULookupUrl) + .AddDataServiceStaticCachedClient(config.CurrentPostingUrl) .Build() .ConfigureServices(services => { diff --git a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataLookupFacade.cs b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataLookupFacade.cs index 428bdc4803..d1fee2b279 100644 --- a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataLookupFacade.cs +++ b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataLookupFacade.cs @@ -14,6 +14,7 @@ public class TransformDataLookupFacade : ITransformDataLookupFacade private readonly IDataServiceClient _bsSelectGPPracticeClient; private readonly IDataServiceClient _languageCodeClient; private readonly IDataServiceClient _excludedSMUClient; + private readonly IDataServiceClient _currentPostingClient; private readonly IMemoryCache _memoryCache; private readonly TransformDataServiceConfig _transformDataServiceConfig; @@ -22,6 +23,7 @@ public TransformDataLookupFacade(IDataServiceClient outcodeClie IDataServiceClient bsSelectGPPracticeClient, IDataServiceClient languageCodeClient, IDataServiceClient excludedSMUClient, + IDataServiceClient currentPostingClient, ILogger logger, IMemoryCache memoryCache, IOptions transformDataServiceConfig) @@ -30,6 +32,7 @@ public TransformDataLookupFacade(IDataServiceClient outcodeClie _bsSelectGPPracticeClient = bsSelectGPPracticeClient; _languageCodeClient = languageCodeClient; _excludedSMUClient = excludedSMUClient; + _currentPostingClient = currentPostingClient; _memoryCache = memoryCache; _logger = logger; _transformDataServiceConfig = transformDataServiceConfig.Value; @@ -113,4 +116,14 @@ public string GetBsoCodeUsingPCP(string primaryCareProvider) return gpPractice.BsoCode; } + + public string RetrievePostingCategory(string currentPosting) + { + if (string.IsNullOrEmpty(currentPosting)) + { + return null; + } + var result = _currentPostingClient.GetSingle(currentPosting).Result; + return result.PostingCategory; + } } diff --git a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataServiceConfig.cs b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataServiceConfig.cs index 51d91f1d90..aeb9bf64e7 100644 --- a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataServiceConfig.cs +++ b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/TransformDataServiceConfig.cs @@ -14,6 +14,7 @@ public class TransformDataServiceConfig public string LanguageCodeUrl { get; set; } [Required] public string ExcludedSMULookupUrl { get; set; } - + [Required] + public string CurrentPostingUrl { get; set; } public int CacheTimeOutHours { get; set; } = 24; } diff --git a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/transformRules.json b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/transformRules.json index 08ad1897a4..6d619e417e 100644 --- a/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/transformRules.json +++ b/application/CohortManager/src/Functions/CohortDistributionServices/TransformDataService/transformRules.json @@ -6,23 +6,19 @@ "RuleName": "8.Transform.UpdatedRecordExcludedAndDMS", "LocalParams": [ { - "Name": "IsPrimaryCareProviderNullOnUpdatedParticipant", - "Expression": "participant.PrimaryCareProvider == null" + "Name": "DMSInSMU", + "Expression": "participant.CurrentPosting == \"DMS\" && excludedSMUList.Contains(participant.PrimaryCareProvider)" }, { - "Name": "IsPrimaryCareProviderNullDatabaseParticipant", - "Expression": "databaseParticipant.PrimaryCareProvider == null" + "Name": "WelshCurrentPosting", + "Expression": "dbLookup.RetrievePostingCategory(participant.CurrentPosting) == \"WALES\"" }, { - "Name": "IsNewRecordInSMU", - "Expression": "participant.CurrentPosting == \"DMS\" && (IsPrimaryCareProviderNullOnUpdatedParticipant ? false : !excludedSMUList.Contains(participant.PrimaryCareProvider)) || new string[] { \"English\", \"NHAIS\", \"Cipher\", \"ENG\", \"IM\" }.Contains(participant.CurrentPosting)" - }, - { - "Name": "IsOldRecordInSMU", - "Expression": "databaseParticipant.CurrentPosting == \"DMS\" && (IsPrimaryCareProviderNullDatabaseParticipant ? false : excludedSMUList.Contains(databaseParticipant.PrimaryCareProvider)) || new string[] { \"Welsh\", \"NHAIS\", \"Cipher\", \"CYM\" }.Contains(databaseParticipant.CurrentPosting)" + "Name": "NoTransformationRequired", + "Expression": "existingParticipant.PrimaryCareProvider == null && existingParticipant.ReasonForRemoval == \"ORR\"" } ], - "Expression": "participant.RecordType == Actions.Amended && IsNewRecordInSMU && IsOldRecordInSMU", + "Expression": "participant.RecordType == Actions.Amended && (DMSInSMU || WelshCurrentPosting) && !NoTransformationRequired", "Actions": { "OnSuccess": { "Name": "TransformAction", @@ -48,6 +44,37 @@ } } }, + { + "RuleName": "8a.Transform.NoTransformButError", + "LocalParams": [ + { + "Name": "DMSInSMU", + "Expression": "participant.CurrentPosting == \"DMS\" && excludedSMUList.Contains(participant.PrimaryCareProvider)" + }, + { + "Name": "WelshCurrentPosting", + "Expression": "dbLookup.RetrievePostingCategory(participant.CurrentPosting) == \"WALES\"" + },{ + "Name": "NoTransformationRequired", + "Expression": "existingParticipant.PrimaryCareProvider == null && existingParticipant.ReasonForRemoval == \"ORR\"" + } + ], + "Expression": "participant.RecordType == Actions.Amended && (DMSInSMU || WelshCurrentPosting) && NoTransformationRequired", + "Actions": { + "OnSuccess": { + "Name": "TransformAction", + "Context": { + "transformFields": [ + { + "isExpression": false, + "field": "PrimaryCareProvider", + "value": null + } + ] + } + } + } + }, { "RuleName": "00.Other.InvalidFlag.TrueAndNoPrimaryCareProvider", "Expression": "(!string.IsNullOrEmpty(participant.PrimaryCareProvider) && participant.InvalidFlag == \"1\") OR participant.RecordType == Actions.Removed", diff --git a/infrastructure/tf-core/environments/development.tfvars b/infrastructure/tf-core/environments/development.tfvars index f08bfc39c2..fe4d3fb839 100644 --- a/infrastructure/tf-core/environments/development.tfvars +++ b/infrastructure/tf-core/environments/development.tfvars @@ -670,6 +670,11 @@ function_apps = { function_app_key = "ReferenceDataService" endpoint_name = "LanguageCode" }, + { + env_var_name = "CurrentPostingUrl" + function_app_key = "ReferenceDataService" + endpoint_name = "CurrentPosting" + }, { env_var_name = "ExcludedSMULookupUrl" function_app_key = "ReferenceDataService" diff --git a/infrastructure/tf-core/environments/integration.tfvars b/infrastructure/tf-core/environments/integration.tfvars index 0ffcf2795d..099fbe4bce 100644 --- a/infrastructure/tf-core/environments/integration.tfvars +++ b/infrastructure/tf-core/environments/integration.tfvars @@ -671,6 +671,11 @@ function_apps = { function_app_key = "ReferenceDataService" endpoint_name = "LanguageCode" }, + { + env_var_name = "CurrentPostingUrl" + function_app_key = "ReferenceDataService" + endpoint_name = "CurrentPosting" + }, { env_var_name = "ExcludedSMULookupUrl" function_app_key = "ReferenceDataService" diff --git a/infrastructure/tf-core/environments/nft.tfvars b/infrastructure/tf-core/environments/nft.tfvars index 4f2e789327..265a404b8d 100644 --- a/infrastructure/tf-core/environments/nft.tfvars +++ b/infrastructure/tf-core/environments/nft.tfvars @@ -670,6 +670,11 @@ function_apps = { function_app_key = "ReferenceDataService" endpoint_name = "LanguageCode" }, + { + env_var_name = "CurrentPostingUrl" + function_app_key = "ReferenceDataService" + endpoint_name = "CurrentPosting" + }, { env_var_name = "ExcludedSMULookupUrl" function_app_key = "ReferenceDataService" diff --git a/infrastructure/tf-core/environments/preprod.tfvars b/infrastructure/tf-core/environments/preprod.tfvars index 1548f157f3..677228b34e 100644 --- a/infrastructure/tf-core/environments/preprod.tfvars +++ b/infrastructure/tf-core/environments/preprod.tfvars @@ -671,6 +671,11 @@ function_apps = { function_app_key = "ReferenceDataService" endpoint_name = "LanguageCode" }, + { + env_var_name = "CurrentPostingUrl" + function_app_key = "ReferenceDataService" + endpoint_name = "CurrentPosting" + }, { env_var_name = "ExcludedSMULookupUrl" function_app_key = "ReferenceDataService" diff --git a/infrastructure/tf-core/environments/production.tfvars b/infrastructure/tf-core/environments/production.tfvars index 443946eef3..109957cc73 100644 --- a/infrastructure/tf-core/environments/production.tfvars +++ b/infrastructure/tf-core/environments/production.tfvars @@ -671,6 +671,11 @@ function_apps = { function_app_key = "ReferenceDataService" endpoint_name = "LanguageCode" }, + { + env_var_name = "CurrentPostingUrl" + function_app_key = "ReferenceDataService" + endpoint_name = "CurrentPosting" + }, { env_var_name = "ExcludedSMULookupUrl" function_app_key = "ReferenceDataService" diff --git a/infrastructure/tf-core/environments/sandbox.tfvars b/infrastructure/tf-core/environments/sandbox.tfvars index a7859133a6..7085650179 100644 --- a/infrastructure/tf-core/environments/sandbox.tfvars +++ b/infrastructure/tf-core/environments/sandbox.tfvars @@ -723,6 +723,11 @@ function_apps = { function_app_key = "ReferenceDataService" endpoint_name = "LanguageCode" }, + { + env_var_name = "CurrentPostingUrl" + function_app_key = "ReferenceDataService" + endpoint_name = "CurrentPosting" + }, { env_var_name = "ExcludedSMULookupUrl" function_app_key = "ReferenceDataService" diff --git a/tests/UnitTests/TransformDataServiceTests/TransformDataServiceTests/TransformDataLookupFacadeTests.cs b/tests/UnitTests/TransformDataServiceTests/TransformDataServiceTests/TransformDataLookupFacadeTests.cs index 2e85299567..4b51fbf7db 100644 --- a/tests/UnitTests/TransformDataServiceTests/TransformDataServiceTests/TransformDataLookupFacadeTests.cs +++ b/tests/UnitTests/TransformDataServiceTests/TransformDataServiceTests/TransformDataLookupFacadeTests.cs @@ -24,7 +24,7 @@ public class TransformDataLookupFacadeTests private Mock> _outcodeClientMock = new(); private readonly Mock> _languageCodeClientMock = new(); private Mock> _gpPracticeClientMock = new(); - + private Mock> _currentPostingClientMock = new(); private Mock> _excludedSMUClient = new(); private Mock> _logger = new(); @@ -55,7 +55,7 @@ public TransformDataLookupFacadeTests() }; _memoryCache.Setup(m => m.TryGetValue(It.IsAny(), out dummy)).Returns(true); - _sut = new(_outcodeClientMock.Object, _gpPracticeClientMock.Object, _languageCodeClientMock.Object, _excludedSMUClient.Object, _logger.Object, _memoryCache.Object, _config.Object); + _sut = new(_outcodeClientMock.Object, _gpPracticeClientMock.Object, _languageCodeClientMock.Object, _excludedSMUClient.Object, _currentPostingClientMock.Object, _logger.Object, _memoryCache.Object, _config.Object); } [TestMethod] diff --git a/tests/playwright-tests/src/tests/e2e/epic4d-validation-tests/epic4d-6045-validation-testsuite-migrated.ts b/tests/playwright-tests/src/tests/e2e/epic4d-validation-tests/epic4d-6045-validation-testsuite-migrated.ts index f3fb234610..760fbd0792 100644 --- a/tests/playwright-tests/src/tests/e2e/epic4d-validation-tests/epic4d-6045-validation-testsuite-migrated.ts +++ b/tests/playwright-tests/src/tests/e2e/epic4d-validation-tests/epic4d-6045-validation-testsuite-migrated.ts @@ -24,5 +24,5 @@ // This equates to "@epic4d-" tags, configured in the package.json at the playwright-tests root location. - export const runnerBasedEpic4dTestScenariosAdd = "@DTOSS-9492-01|@DTOSS-9496-01|@DTOSS-9498-01"; - export const runnerBasedEpic4dTestScenariosAmend = "@DTOSS-9493-01|@DTOSS-9497-01|@DTOSS-9499-01"; + export const runnerBasedEpic4dTestScenariosAdd = "@DTOSS-9496-01|@DTOSS-9498-01|@DTOSS-A456-01|@DTOSS-A457-01|@DTOSS-A459-01"; + export const runnerBasedEpic4dTestScenariosAmend = "@DTOSS-9497-01|@DTOSS-9499-01|@DTOSS-A451-01|@DTOSS-A452-01|@DTOSS-A453-01|@DTOSS-A454-01|@DTOSS-A455-01|@DTOSS-A458-01"; diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A451-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A451-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..87b298fdec --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A451-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9301065649, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10451-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9301065649, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10451-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9301065649, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10451-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9301065649, + "superseded_by_nhs_number": null, + "primary_care_provider": "A81001", + "primary_care_effective_from_date": null, + "current_posting": "DMS", + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mr", + "given_name": "Darren", + "other_given_name": null, + "family_name": "Reg", + "previous_family_name": null, + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9301065649" + ] +} \ No newline at end of file diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A451-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A451-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..7877f6a586 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A451-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,62 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/ExceptionManagementDataService", + "NhsNumber": "9997111834", + "RuleId": 8, + "RuleDescription": "Participant was transformed as transform rule: UpdatedRecordExcludedAndDMS was executed" + }, + "meta": { + "testJiraId": "@DTOSS-10451-01", + "requirementJiraId": "@DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 exception raised for participant CurrentPosting is DMS and PrimaryCareProvider is on excluded list with nhs number 9997111834" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "AMENDED", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9301065649, + "superseded_by_nhs_number": null, + "primary_care_provider": "A91203", + "primary_care_effective_from_date": null, + "current_posting": "DMS", + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mr", + "given_name": "Darren", + "other_given_name": null, + "family_name": "Reg", + "previous_family_name": null, + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9301065649" + ] +} diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A452-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A452-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..9223c8efd0 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A452-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10452-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10452-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10452-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9998136431, + "superseded_by_nhs_number": null, + "primary_care_provider": "A81001", + "primary_care_effective_from_date": null, + "current_posting": "DMS", + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mrs", + "given_name": "Dalby", + "other_given_name": "Conners", + "family_name": "Reg", + "previous_family_name": "gibbins", + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9998136431" + ] +} \ No newline at end of file diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A452-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A452-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..e181b61687 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A452-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10452-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10452-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10452-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9998136431, + "superseded_by_nhs_number": null, + "primary_care_provider": "B45666", + "primary_care_effective_from_date": null, + "current_posting": "DMS", + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mrs", + "given_name": "Dalby", + "other_given_name": "Conners", + "family_name": "Reg", + "previous_family_name": "gibbins", + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9998136431" + ] +} \ No newline at end of file diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A453-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A453-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..02870e7902 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A453-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10453-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10453-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10453-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e@ @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9998136431, + "superseded_by_nhs_number": null, + "primary_care_provider": null, + "primary_care_effective_from_date": null, + "current_posting": null, + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mrs", + "given_name": "Dalby", + "other_given_name": "Conners", + "family_name": "Reg", + "previous_family_name": "gibbins", + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9998136431" + ] +} \ No newline at end of file diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A453-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A453-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..69200dd88e --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A453-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,62 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/ExceptionManagementDataService", + "NhsNumber": "9997111834", + "RuleId": 8, + "RuleDescription": "Participant was transformed as transform rule: UpdatedRecordExcludedAndDMS was executed" + }, + "meta": { + "testJiraId": "@DTOSS-10453-01", + "requirementJiraId": "@DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Validate exception raised for participant CurrentPosting is CYM and PrimaryCareProvider is on excluded list with nhs number 9997111834" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "AMENDED", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9997111834, + "superseded_by_nhs_number": null, + "primary_care_provider": "A91203", + "primary_care_effective_from_date": "20130319", + "current_posting": "CYM", + "current_posting_effective_from_date": "20130319", + "name_prefix": "A.ML", + "given_name": "NewTest1", + "other_given_name": "Test", + "family_name": "Adani1", + "previous_family_name": "Test2", + "date_of_birth": "19700101", + "gender": 1, + "address_line_1": "247 SpaightSpaightSpTeeeeeeest Road", + "address_line_2": "Eastbourne", + "address_line_3": "Test", + "address_line_4": "Chelmsford", + "address_line_5": "United Kingdom", + "postcode": "AB43 8FJ", + "paf_key": "Z3S4Q5X9", + "address_effective_from_date": null, + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "01619999999", + "home_telephone_effective_from_date": "20240501", + "mobile_telephone_number": "07888888888", + "mobile_telephone_effective_from_date": "20240501", + "email_address": "bturneux0@soup.io", + "email_address_effective_from_date": null, + "preferred_language": "dm", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9997111834" + ] +} diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A454-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A454-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..c615a9b6df --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A454-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10454-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10454-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10454-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9998136431, + "superseded_by_nhs_number": null, + "primary_care_provider": "B45666", + "primary_care_effective_from_date": null, + "current_posting": "ENG", + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mrs", + "given_name": "Dalby", + "other_given_name": "Conners", + "family_name": "Reg", + "previous_family_name": "gibbins", + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9998136431" + ] +} \ No newline at end of file diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A454-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A454-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..672e423657 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A454-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,62 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/ExceptionManagementDataService", + "NhsNumber": "9997111834", + "RuleId": 8, + "RuleDescription": "Participant was transformed as transform rule: UpdatedRecordExcludedAndDMS was executed" + }, + "meta": { + "testJiraId": "@DTOSS-10454-01", + "requirementJiraId": "@DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Validate exception raised for participant CurrentPosting is CYM and PrimaryCareProvider is not on excluded list with nhs number 9997111834" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "AMENDED", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9997111834, + "superseded_by_nhs_number": null, + "primary_care_provider": "B45666", + "primary_care_effective_from_date": "20130319", + "current_posting": "CYM", + "current_posting_effective_from_date": "20130319", + "name_prefix": "A.ML", + "given_name": "NewTest1", + "other_given_name": "Test", + "family_name": "Adani1", + "previous_family_name": "Test2", + "date_of_birth": "19700101", + "gender": 1, + "address_line_1": "247 SpaightSpaightSpTeeeeeeest Road", + "address_line_2": "Eastbourne", + "address_line_3": "Test", + "address_line_4": "Chelmsford", + "address_line_5": "United Kingdom", + "postcode": "AB43 8FJ", + "paf_key": "Z3S4Q5X9", + "address_effective_from_date": null, + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "01619999999", + "home_telephone_effective_from_date": "20240501", + "mobile_telephone_number": "07888888888", + "mobile_telephone_effective_from_date": "20240501", + "email_address": "bturneux0@soup.io", + "email_address_effective_from_date": null, + "preferred_language": "dm", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9997111834" + ] +} diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A455-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A455-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..016b6880e2 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A455-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10455-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10455-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10455-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9998136431, + "superseded_by_nhs_number": null, + "primary_care_provider": "A81001", + "primary_care_effective_from_date": null, + "current_posting": "ENG", + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mrs", + "given_name": "Dalby", + "other_given_name": "Conners", + "family_name": "Reg", + "previous_family_name": "gibbins", + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9998136431" + ] +} \ No newline at end of file diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A455-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A455-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..6053d48414 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A455-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10455-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10455-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9998136431, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10455-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "AMENDED", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9997111834, + "superseded_by_nhs_number": null, + "primary_care_provider": "A91203", + "primary_care_effective_from_date": "20130319", + "current_posting": "ENG", + "current_posting_effective_from_date": "20130319", + "name_prefix": "A.ML", + "given_name": "NewTest1", + "other_given_name": "Test", + "family_name": "Adani1", + "previous_family_name": "Test2", + "date_of_birth": "19700101", + "gender": 1, + "address_line_1": "247 SpaightSpaightSpTeeeeeeest Road", + "address_line_2": "Eastbourne", + "address_line_3": "Test", + "address_line_4": "Chelmsford", + "address_line_5": "United Kingdom", + "postcode": "AB43 8FJ", + "paf_key": "Z3S4Q5X9", + "address_effective_from_date": null, + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "01619999999", + "home_telephone_effective_from_date": "20240501", + "mobile_telephone_number": "07888888888", + "mobile_telephone_effective_from_date": "20240501", + "email_address": "bturneux0@soup.io", + "email_address_effective_from_date": null, + "preferred_language": "dm", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9997111834" + ] +} diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A456-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A456-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..71d1eb68a2 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A456-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,62 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/ExceptionManagementDataService", + "NhsNumber": "9997111834", + "RuleId": 3, + "RuleDescription": "GP practice code and Reason for Removal fields contain incompatible values" + }, + "meta": { + "testJiraId": "@DTOSS-10456-01", + "requirementJiraId": "@DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Validate exception raised for participant CurrentPosting is CYM and PrimaryCareProvider is null and ReasonForRemoval is null with nhs number 9997111834" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9997111834, + "superseded_by_nhs_number": null, + "primary_care_provider": null, + "primary_care_effective_from_date": null, + "current_posting": "CYM", + "current_posting_effective_from_date": "20130319", + "name_prefix": "A.ML", + "given_name": "NewTest1", + "other_given_name": "Test", + "family_name": "Adani1", + "previous_family_name": "Test2", + "date_of_birth": "19700101", + "gender": 1, + "address_line_1": "247 SpaightSpaightSpTeeeeeeest Road", + "address_line_2": "Eastbourne", + "address_line_3": "Test", + "address_line_4": "Chelmsford", + "address_line_5": "United Kingdom", + "postcode": "AB43 8FJ", + "paf_key": "Z3S4Q5X9", + "address_effective_from_date": null, + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "01619999999", + "home_telephone_effective_from_date": "20240501", + "mobile_telephone_number": "07888888888", + "mobile_telephone_effective_from_date": "20240501", + "email_address": "bturneux0@soup.io", + "email_address_effective_from_date": null, + "preferred_language": "dm", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9997111834" + ] +} diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A457-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A457-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..f6732f7598 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A457-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,62 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/ExceptionManagementDataService", + "NhsNumber": "9997111834", + "RuleId": 3, + "RuleDescription": "GP practice code and Reason for Removal fields contain incompatible values" + }, + "meta": { + "testJiraId": "@DTOSS-10457-01", + "requirementJiraId": "@DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Validate exception raised for participant CurrentPosting is DMS and PrimaryCareProvider is null and ReasonForRemoval is null with nhs number 9997111834" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9997111834, + "superseded_by_nhs_number": null, + "primary_care_provider": null, + "primary_care_effective_from_date": null, + "current_posting": "DMS", + "current_posting_effective_from_date": "20130319", + "name_prefix": "A.ML", + "given_name": "NewTest1", + "other_given_name": "Test", + "family_name": "Adani1", + "previous_family_name": "Test2", + "date_of_birth": "19700101", + "gender": 1, + "address_line_1": "247 SpaightSpaightSpTeeeeeeest Road", + "address_line_2": "Eastbourne", + "address_line_3": "Test", + "address_line_4": "Chelmsford", + "address_line_5": "United Kingdom", + "postcode": "AB43 8FJ", + "paf_key": "Z3S4Q5X9", + "address_effective_from_date": null, + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "01619999999", + "home_telephone_effective_from_date": "20240501", + "mobile_telephone_number": "07888888888", + "mobile_telephone_effective_from_date": "20240501", + "email_address": "bturneux0@soup.io", + "email_address_effective_from_date": null, + "preferred_language": "dm", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9997111834" + ] +} diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A458-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A458-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..d68d5ed781 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A458-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,86 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9263186138, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10458-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantManagementDataService", + "RecordType": "ADD", + "NHSNumber": 9263186138, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10458-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Management table for NHS Number 9998136431" + } + }, + { + "validations": { + "apiEndpoint": "api/ParticipantDemographicDataService", + "NhsNumber": 9263186138, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10458-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify ADD records is processed without any Exception and participant is stored on Participant_Demographic table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9263186138, + "superseded_by_nhs_number": null, + "primary_care_provider": null, + "primary_care_effective_from_date": null, + "current_posting": "CYM", + "current_posting_effective_from_date": "20130319", + "name_prefix": "Mrs", + "given_name": "Dalby", + "other_given_name": "Conners", + "family_name": "Reg", + "previous_family_name": "gibbins", + "date_of_birth": "19720112", + "gender": 1, + "address_line_1": "AddressLine1", + "address_line_2": "AddressLine2", + "address_line_3": "AddressLine3", + "address_line_4": "AddressLine4", + "address_line_5": "AddressLine5", + "postcode": "AB23 1AF", + "paf_key": "Z3S4Q5X8", + "address_effective_from_date": "20250101", + "reason_for_removal": "ORR", + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "161999999", + "home_telephone_effective_from_date": "20240908", + "mobile_telephone_number": "788888888", + "mobile_telephone_effective_from_date": "20010101", + "email_address": "abc123@soup.io", + "email_address_effective_from_date": "20240101", + "preferred_language": "en", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9263186138" + ] +} \ No newline at end of file diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A458-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A458-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..203858a91f --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A458-01/AMENDED1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,62 @@ +{ + "validations": [ + { + "validations": { + + "apiEndpoint": "api/CohortDistributionDataService", + "NHSNumber": 9263186138, + "expectedCount": 1 + }, + "meta": { + "testJiraId": "@DTOSS-10458-01", + "requirementJiraId": "DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 Verify participant is stored on Cohort_Distribution table for NHS Number 9998136431" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "AMENDED", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9263186138, + "superseded_by_nhs_number": null, + "primary_care_provider": "A91151", + "primary_care_effective_from_date": "20130319", + "current_posting": "CYM", + "current_posting_effective_from_date": "20130319", + "name_prefix": "A.ML", + "given_name": "NewTest1", + "other_given_name": "Test", + "family_name": "Adani1", + "previous_family_name": "Test2", + "date_of_birth": "19700101", + "gender": 1, + "address_line_1": "247 SpaightSpaightSpTeeeeeeest Road", + "address_line_2": "Eastbourne", + "address_line_3": "Test", + "address_line_4": "Chelmsford", + "address_line_5": "United Kingdom", + "postcode": "AB43 8FJ", + "paf_key": "Z3S4Q5X9", + "address_effective_from_date": null, + "reason_for_removal": "ORR", + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "01619999999", + "home_telephone_effective_from_date": "20240501", + "mobile_telephone_number": "07888888888", + "mobile_telephone_effective_from_date": "20240501", + "email_address": "bturneux0@soup.io", + "email_address_effective_from_date": null, + "preferred_language": "dm", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9263186138" + ] +} diff --git a/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A459-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A459-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json new file mode 100644 index 0000000000..0117502c89 --- /dev/null +++ b/tests/playwright-tests/src/tests/e2e/testFiles/@DTOSS-A459-01/ADD1_-_CAAS_BREAST_SCREENING_COHORT.json @@ -0,0 +1,61 @@ +{ + "validations": [ + { + "validations": { + "apiEndpoint": "api/ExceptionManagementDataService", + "NhsNumber": "9997111834", + "RuleId": -2146233088 + }, + "meta": { + "testJiraId": "@DTOSS-10459-01", + "requirementJiraId": "@DTOSS-9935", + "additionalTags": "@regression @e2e @epic4d-rule8 (ONLY WORKS IF TRANSFORM DATA SERVICE IS NOT RUNNING) - Validate exception raised for participant CurrentPosting is DMS and PrimaryCareProvider is on excluded list with nhs number 9997111834" + } + } + ], + "inputParticipantRecord": [ + { + "record_type": "ADD", + "change_time_stamp": null, + "serial_change_number": 1, + "nhs_number": 9997111834, + "superseded_by_nhs_number": null, + "primary_care_provider": "A91203", + "primary_care_effective_from_date": "20130319", + "current_posting": "DMS", + "current_posting_effective_from_date": "20130319", + "name_prefix": "A.ML", + "given_name": "NewTest1", + "other_given_name": "Test", + "family_name": "Adani1", + "previous_family_name": "Test2", + "date_of_birth": "19700101", + "gender": 1, + "address_line_1": "247 SpaightSpaightSpTeeeeeeest Road", + "address_line_2": "Eastbourne", + "address_line_3": "Test", + "address_line_4": "Chelmsford", + "address_line_5": "United Kingdom", + "postcode": "AB43 8FJ", + "paf_key": "Z3S4Q5X9", + "address_effective_from_date": null, + "reason_for_removal": null, + "reason_for_removal_effective_from_date": null, + "date_of_death": null, + "death_status": null, + "home_telephone_number": "01619999999", + "home_telephone_effective_from_date": "20240501", + "mobile_telephone_number": "07888888888", + "mobile_telephone_effective_from_date": "20240501", + "email_address": "bturneux0@soup.io", + "email_address_effective_from_date": null, + "preferred_language": "dm", + "is_interpreter_required": false, + "invalid_flag": false, + "eligibility": true + } + ], + "nhsNumbers": [ + "9997111834" + ] +}