Files
anthonyrawlins aacb45156b Set up comprehensive frontend testing infrastructure
- Install Jest for unit testing with React Testing Library
- Install Playwright for end-to-end testing
- Configure Jest with proper TypeScript support and module mapping
- Create test setup files and utilities for both unit and e2e tests

Components:
* Jest configuration with coverage thresholds
* Playwright configuration with browser automation
* Unit tests for LoginForm, AuthContext, and useSocketIO hook
* E2E tests for authentication, dashboard, and agents workflows
* GitHub Actions workflow for automated testing
* Mock data and API utilities for consistent testing
* Test documentation with best practices

Testing features:
- Unit tests with 70% coverage threshold
- E2E tests with API mocking and user journey testing
- CI/CD integration for automated test runs
- Cross-browser testing support with Playwright
- Authentication system testing end-to-end

🚀 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-11 14:06:34 +10:00

125 lines
2.4 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var comboboxRole = {
abstract: false,
accessibleNameRequired: true,
baseConcepts: [],
childrenPresentational: false,
nameFrom: ['author'],
prohibitedProps: [],
props: {
'aria-activedescendant': null,
'aria-autocomplete': null,
'aria-errormessage': null,
'aria-invalid': null,
'aria-readonly': null,
'aria-required': null,
'aria-expanded': 'false',
'aria-haspopup': 'listbox'
},
relatedConcepts: [{
concept: {
attributes: [{
constraints: ['set'],
name: 'list'
}, {
name: 'type',
value: 'email'
}],
name: 'input'
},
module: 'HTML'
}, {
concept: {
attributes: [{
constraints: ['set'],
name: 'list'
}, {
name: 'type',
value: 'search'
}],
name: 'input'
},
module: 'HTML'
}, {
concept: {
attributes: [{
constraints: ['set'],
name: 'list'
}, {
name: 'type',
value: 'tel'
}],
name: 'input'
},
module: 'HTML'
}, {
concept: {
attributes: [{
constraints: ['set'],
name: 'list'
}, {
name: 'type',
value: 'text'
}],
name: 'input'
},
module: 'HTML'
}, {
concept: {
attributes: [{
constraints: ['set'],
name: 'list'
}, {
name: 'type',
value: 'url'
}],
name: 'input'
},
module: 'HTML'
}, {
concept: {
attributes: [{
constraints: ['set'],
name: 'list'
}, {
name: 'type',
value: 'url'
}],
name: 'input'
},
module: 'HTML'
}, {
concept: {
attributes: [{
constraints: ['undefined'],
name: 'multiple'
}, {
constraints: ['undefined'],
name: 'size'
}],
constraints: ['the multiple attribute is not set and the size attribute does not have a value greater than 1'],
name: 'select'
},
module: 'HTML'
}, {
concept: {
name: 'select'
},
module: 'XForms'
}],
requireContextRole: [],
requiredContextRole: [],
requiredOwnedElements: [],
requiredProps: {
'aria-controls': null,
'aria-expanded': 'false'
},
superClass: [['roletype', 'widget', 'input']]
};
var _default = comboboxRole;
exports.default = _default;