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>
This commit is contained in:
		
							
								
								
									
										24
									
								
								frontend/node_modules/parse5/dist/cjs/common/token.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								frontend/node_modules/parse5/dist/cjs/common/token.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| "use strict"; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| exports.TokenType = void 0; | ||||
| exports.getTokenAttr = getTokenAttr; | ||||
| var TokenType; | ||||
| (function (TokenType) { | ||||
|     TokenType[TokenType["CHARACTER"] = 0] = "CHARACTER"; | ||||
|     TokenType[TokenType["NULL_CHARACTER"] = 1] = "NULL_CHARACTER"; | ||||
|     TokenType[TokenType["WHITESPACE_CHARACTER"] = 2] = "WHITESPACE_CHARACTER"; | ||||
|     TokenType[TokenType["START_TAG"] = 3] = "START_TAG"; | ||||
|     TokenType[TokenType["END_TAG"] = 4] = "END_TAG"; | ||||
|     TokenType[TokenType["COMMENT"] = 5] = "COMMENT"; | ||||
|     TokenType[TokenType["DOCTYPE"] = 6] = "DOCTYPE"; | ||||
|     TokenType[TokenType["EOF"] = 7] = "EOF"; | ||||
|     TokenType[TokenType["HIBERNATION"] = 8] = "HIBERNATION"; | ||||
| })(TokenType || (exports.TokenType = TokenType = {})); | ||||
| function getTokenAttr(token, attrName) { | ||||
|     for (let i = token.attrs.length - 1; i >= 0; i--) { | ||||
|         if (token.attrs[i].name === attrName) { | ||||
|             return token.attrs[i].value; | ||||
|         } | ||||
|     } | ||||
|     return null; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 anthonyrawlins
					anthonyrawlins