Background
Admins will sometimes want to block a target from accessing certain namespaces, and allow a target to interact with other types of content
user story
As an admin, I want to block a user from performing specific actions on specific namespaces, so that I can direct their attention towards more positive behavior
requirements / acceptance criteria
Given that I am an admin creating a new block, when I select partial blocks, the "namespace" text field should appear, and I should be able to search for a given namespace.
- There should be a predefined list of namespaces in a dropdown menu
- the admin should be able to filter the namespaces by typing
- Admins should be able to select multiple namespaces
- Clicking "x" on a ChipInput should remove a namespace
Implement Namespaces field for partial blocks in Codex. This field will allow admins to select the Namespaces they want to apply the block for.
The namespace field should look and feel as defined in Figma file
Derived Requirement
In Codex Special:Block, allow admins to create partial blocks with multiple namespaces. When an admin selects the partial block option, a "Namespaces" field should appear, displaying a dropdown menu with a predefined list of namespaces. Admins should be able to filter namespaces by typing, select multiple namespaces, and remove selected namespaces by clicking "x" on the corresponding ChipInput.
BDD
gherkin Feature: Partial Block with Multiple Namespaces in Codex Special:Block Scenario: Display "Namespaces" field when partial block is selected Given the admin is creating a new block When the admin selects the partial block option Then the "Namespaces" field should be displayed Scenario: Filter namespaces by typing in the dropdown menu Given the "Namespaces" field is visible in the partial block options When the admin begins typing in the "Namespaces" field Then the dropdown menu should display only namespaces matching the typed characters Scenario: Select multiple namespaces for partial block Given the "Namespaces" field is visible in the partial block options When the admin selects multiple namespaces from the dropdown menu Then each selected namespace should appear as a ChipInput in the "Namespaces" field Scenario: Remove a selected namespace by clicking "x" on the ChipInput Given multiple namespaces are selected in the "Namespaces" field When the admin clicks "x" on a specific ChipInput Then that namespace should be removed from the "Namespaces" field
Test Result - Beta|Prod
Status: ✅ PASS / ❓Need More Info / ❌ FAIL
Environment: beta/xyzwiki
OS: macOS Sonoma 15.0
Browser: Chrome 130
Device: MBA
Emulated Device: NA
Test Artifact(s):
Test Steps
Test Case 1: Display "Namespaces" Field When Partial Block is Selected
- Begin creating a new block in the Codex Special:Block form.
- Select the "Partial block" option.
- ✅❓❌⬜ AC1: Confirm that the "Namespaces" field appears when partial block is selected.
Test Case 2: Filter Namespaces by Typing in the Dropdown Menu
- Begin creating a new block in the Codex Special:Block form.
- Select the "Partial block" option.
- In the "Namespaces" field, start typing a namespace name.
- ✅❓❌⬜ AC2: Confirm that the dropdown menu filters namespaces based on the typed characters.
Test Case 3: Select Multiple Namespaces for Partial Block
- Begin creating a new block in the Codex Special:Block form.
- Select the "Partial block" option.
- In the "Namespaces" field, select multiple namespaces from the dropdown menu.
- ✅❓❌⬜ AC3: Confirm that each selected namespace appears as a ChipInput in the "Namespaces" field.
Test Case 4: Remove a Selected Namespace by Clicking "x" on the ChipInput
- Begin creating a new block in the Codex Special:Block form.
- Select the "Partial block" option.
- In the "Namespaces" field, select multiple namespaces.
- Click "x" on one of the ChipInputs for a selected namespace.
- ✅❓❌⬜ AC4: Confirm that the selected namespace is removed from the "Namespaces" field after clicking "x".
QA Results - Beta
AC | Status | Details |
---|---|---|
1 | ✅ | T362720#10283056 |
2 | ✅ | T362720#10297211 |
3 | ✅ | T362720#10297286 |
4 | ✅ | T362720#10283056 |