Skip to content

ATS-CRM-DQ-004Check drafts and account for block overrides: Acceptance Scenarios

Markdown

ATS-CRM-DQ-004

Check drafts and account for block overrides: Acceptance Scenarios

Markdown
  • DocumentProposed

Planning

Proves capability
CAP-CRM-DQ-004

KindAcceptance test setProduct areaCRMModuleDuplicate Review and Record MergingRevision1

Read atservices-crm a8d1364freact-console baf6dae3

Test Scenarios

8 scenarios proving CAP-CRM-DQ-004; 8 bound to an existing test.

01 Draft results honor confidence and exclude the edited recordapitest
Proves
BR-CAP-CRM-DQ-004-01 BR-CAP-CRM-DQ-004-02
Preconditions
Prepare many draft look-alikes, its own saved record and a very-high rule floor.
Steps
Request the draft check.
Expected
No more than five ranked matches appear, excluding self and below-floor candidates.
Data
The existing scenario setup supplies the required records.
Bound to
services-crm:modules/duplicates/tests/integration/services/detection/duplicate-checks.integration.spec.js#does not answer the record itself, a record never being its own duplicate
Source
services-crm:modules/duplicates/tests/integration/services/detection/duplicate-checks.integration.spec.js#answers at most the five a form shows, however many the tenant holds
02 Checking does not create review workapitest
Proves
BR-CAP-CRM-DQ-004-04
Preconditions
A draft resembles an existing contact.
Steps
Check the draft and read candidates afterwards.
Expected
The review queue retains its earlier contents.
Data
The existing scenario setup supplies the required records.
Bound to
services-crm:modules/duplicates/tests/e2e/duplicates.e2e.spec.js#writes nothing: the draft is not a record, so the queue is as it was
Source
services-crm:modules/duplicates/tests/e2e/duplicates.e2e.spec.js#writes nothing: the draft is not a record, so the queue is as it was
03 Draft checking requires duplicate-read authorityapinegativetest
Proves
BR-CAP-CRM-DQ-004-05
Preconditions
Use a caller with no duplicate permission.
Steps
Submit a check request.
Expected
Access is denied.
Data
The existing scenario setup supplies the required records.
Bound to
services-crm:modules/duplicates/tests/e2e/duplicates.e2e.spec.js#answers 403 to a caller with no duplicates permission at all
Source
services-crm:modules/duplicates/tests/e2e/duplicates.e2e.spec.js#answers 403 to a caller with no duplicates permission at all
04 Overrides validate reasons and commit with creationapinegativetest
Proves
BR-CAP-CRM-DQ-004-06 BR-CAP-CRM-DQ-004-07
Preconditions
A blocking rule refuses the intended create.
Steps
Try absent and blank reasons, no rule, a failing audit write and then a valid override.
Expected
Invalid fields are named, an audit failure leaves no contact and the valid create retains one attributed override record.
Data
The existing scenario setup supplies the required records.
Bound to
Source
services-crm:modules/duplicates/tests/integration/services/persistence/duplicate-block-overrides.integration.spec.js#refuses an override with no reason, naming the field
05 Override records cannot be duplicated or updatedapinegativetest
Proves
BR-CAP-CRM-DQ-004-07 BR-CAP-CRM-DQ-004-08
Preconditions
A record already has a block override.
Steps
Insert another override and attempt an application update.
Expected
Both writes are refused.
Data
The existing scenario setup supplies the required records.
Bound to
Source
services-crm:modules/duplicates/tests/integration/services/persistence/duplicate-block-overrides.integration.spec.js#refuses a second override of the same record, a record being created once
06 Organization exceptions use the same accountable boundaryapitest
Proves
BR-CAP-CRM-DQ-004-10
Preconditions
Configure an organization blocker and an existing match.
Steps
Create ordinarily, then override with authority and a reason.
Expected
Ordinary creation identifies the blocking match; the authorized exception creates an audited organization.
Data
The existing scenario setup supplies the required records.
Bound to
services-crm:modules/duplicates/tests/e2e/organization-block-rules.e2e.spec.js#refuses an ordinary user’s create 409 possible_duplicate, naming the held organization
services-crm:modules/duplicates/tests/e2e/organization-block-rules.e2e.spec.js#audits the override with its reason, its rule and the organization it was let past
Source
services-crm:modules/duplicates/tests/e2e/organization-block-rules.e2e.spec.js#refuses an ordinary user’s create 409 possible_duplicate, naming the held organization
07 The form displays suggestions only for a useful draftbrowsertest
Proves
BR-CAP-CRM-DQ-004-01 BR-CAP-CRM-DQ-004-04
Preconditions
Prepare an existing member.
Steps
Enter matching details, then remove the name.
Expected
Up to five suggestions appear without writes, and the nameless form shows no suggestions.
Data
The existing scenario setup supplies the required records.
Bound to
Source
react-console:acceptance/crm/playwright/journeys/merging/CRM-ACC-0243.spec.ts#CRM-ACC-0243
08 Unsupported check record types are rejectedapinegativetest
Proves
BR-CAP-CRM-DQ-004-13
Preconditions
Use an authorized duplicate reader.
Steps
Request a draft check for an unsupported record type.
Expected
The API returns an invalid-request refusal naming the type.
Data
Use the records and caller described in this scenario.
Bound to
services-crm:modules/duplicates/tests/e2e/duplicates.e2e.spec.js#refuses a record type detection does not run over, naming the segment (400)
Source
services-crm:modules/duplicates/aws/api/duplicates.routes.ts:objectTypeOf

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.