fix(tests): Enhance CrowdSecConfig with new input fields and improve accessibility

- Added IDs to input fields in CrowdSecConfig for better accessibility.
- Updated labels to use <label> elements for checkboxes and inputs.
- Improved error handling and user feedback in the CrowdSecConfig tests.
- Enhanced test coverage for console enrollment and banned IP functionalities.

fix: Update SecurityHeaders to include aria-label for delete button

- Added aria-label to the delete button for better screen reader support.

test: Add comprehensive tests for proxyHostsHelpers and validation utilities

- Implemented tests for formatting and help text functions in proxyHostsHelpers.
- Added validation tests for email and IP address formats.

chore: Update vitest configuration for dynamic coverage thresholds

- Adjusted coverage thresholds to be dynamic based on environment variables.
- Included additional coverage reporters.

chore: Update frontend-test-coverage script to reflect new coverage threshold

- Increased minimum coverage requirement from 85% to 87.5%.

fix: Ensure tests pass with consistent data in passwd file

- Updated tests/etc/passwd to ensure consistent content.
This commit is contained in:
GitHub Actions
2026-02-06 17:38:08 +00:00
parent 57c3a70007
commit 10582872f9
34 changed files with 4197 additions and 724 deletions
@@ -178,6 +178,7 @@ export function PermissionsPolicyBuilder({ value, onChange }: PermissionsPolicyB
value={newFeature}
onChange={(e) => setNewFeature(e.target.value)}
className="w-48"
aria-label="Select Feature"
>
{FEATURES.map((feature) => (
<option key={feature} value={feature}>
@@ -190,6 +191,7 @@ export function PermissionsPolicyBuilder({ value, onChange }: PermissionsPolicyB
value={newAllowlist}
onChange={(e) => setNewAllowlist(e.target.value)}
className="w-40"
aria-label="Select Allowlist Origin"
>
{ALLOWLIST_PRESETS.map((preset) => (
<option key={preset.value} value={preset.value}>
@@ -208,7 +210,7 @@ export function PermissionsPolicyBuilder({ value, onChange }: PermissionsPolicyB
/>
)}
<Button onClick={handleAddFeature}>
<Button onClick={handleAddFeature} aria-label="Add Feature">
<Plus className="w-4 h-4" />
</Button>
</div>
@@ -247,6 +249,7 @@ export function PermissionsPolicyBuilder({ value, onChange }: PermissionsPolicyB
variant="ghost"
size="sm"
onClick={() => handleRemoveFeature(policy.feature)}
aria-label={`Remove ${policy.feature}`}
>
<X className="w-4 h-4" />
</Button>