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

47 lines
920 B
JavaScript

"use strict";
const parsers = require("../parsers");
module.exports.parse = function parse(v) {
let num = parsers.parseNumber(v);
if (num) {
num = parseFloat(num);
if (num < 0) {
return "0";
} else if (num > 1) {
return "1";
}
return `${num}`;
}
let pct = parsers.parsePercent(v);
if (pct) {
pct = parseFloat(pct);
if (pct < 0) {
return "0%";
} else if (pct > 100) {
return "100%";
}
return `${pct}%`;
}
return parsers.parseKeyword(v);
};
module.exports.isValid = function isValid(v) {
if (v === "") {
return true;
}
return typeof module.exports.parse(v) === "string";
};
module.exports.definition = {
set(v) {
v = parsers.prepareValue(v, this._global);
this._setProperty("opacity", module.exports.parse(v));
},
get() {
return this.getPropertyValue("opacity");
},
enumerable: true,
configurable: true
};