mirror of https://github.com/docusealco/docuseal
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
2.1 KiB
87 lines
2.1 KiB
# Accessibility Testing Setup Notes
|
|
|
|
## Gem Installation Required
|
|
|
|
The `axe-core-rspec` gem has been added to the Gemfile but requires installation.
|
|
|
|
### Prerequisites
|
|
|
|
This project requires **Ruby 4.0.1** (as specified in Gemfile).
|
|
|
|
Currently, the system Ruby is 2.6.10, which is incompatible. You'll need to:
|
|
|
|
1. **Install a Ruby version manager** (recommended: rbenv or asdf)
|
|
|
|
```bash
|
|
# Using rbenv
|
|
brew install rbenv ruby-build
|
|
rbenv install 4.0.1
|
|
rbenv local 4.0.1
|
|
|
|
# Or using asdf
|
|
brew install asdf
|
|
asdf plugin add ruby
|
|
asdf install ruby 4.0.1
|
|
asdf local ruby 4.0.1
|
|
```
|
|
|
|
2. **Install dependencies**
|
|
|
|
```bash
|
|
bundle install
|
|
yarn install
|
|
```
|
|
|
|
3. **Run accessibility tests**
|
|
|
|
```bash
|
|
bundle exec rspec spec/accessibility/
|
|
```
|
|
|
|
## What's Been Set Up
|
|
|
|
✅ **Added to Gemfile (test group):**
|
|
- `axe-core-rspec` - Automated WCAG 2.2 validation
|
|
|
|
✅ **Created directory structure:**
|
|
- `spec/accessibility/` - Test files for a11y specs
|
|
- `spec/support/` - Helper modules
|
|
|
|
✅ **Created accessibility helpers:**
|
|
- `spec/support/accessibility_helpers.rb` - Custom test helpers for WCAG validation
|
|
- Methods for checking landmarks, labels, keyboard access, modals, etc.
|
|
|
|
✅ **Created documentation:**
|
|
- `spec/accessibility/README.md` - Comprehensive testing guide
|
|
- Covers running tests, manual testing, WCAG criteria, and resources
|
|
|
|
## Using axe-core-rspec
|
|
|
|
Once the gem is installed, you can use it in your tests:
|
|
|
|
```ruby
|
|
# spec/accessibility/wcag_compliance_spec.rb
|
|
RSpec.describe 'WCAG Compliance', type: :system do
|
|
it 'passes axe audit on home page' do
|
|
visit root_path
|
|
expect(page).to be_axe_clean
|
|
end
|
|
|
|
it 'passes WCAG 2.2 AA on submissions page' do
|
|
visit submissions_path
|
|
expect(page).to be_axe_clean.according_to(:wcag2aa, :wcag22aa)
|
|
end
|
|
|
|
it 'passes specific tag checks' do
|
|
visit template_path
|
|
expect(page).to be_axe_clean
|
|
.excluding('.legacy-component')
|
|
.according_to(:wcag2aa)
|
|
end
|
|
end
|
|
```
|
|
|
|
## Next Steps
|
|
|
|
After bundle install completes, the testing infrastructure will be fully operational and ready for Phase 1 fixes.
|