 aacb45156b
			
		
	
	aacb45156b
	
	
	
		
			
			- 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>
		
			
				
	
	
		
			96 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| /**
 | |
|  * Copyright (c) Meta Platforms, Inc. and affiliates.
 | |
|  *
 | |
|  * This source code is licensed under the MIT license found in the
 | |
|  * LICENSE file in the root directory of this source tree.
 | |
|  */
 | |
| 
 | |
| export declare const arrayBufferEquality: (
 | |
|   a: unknown,
 | |
|   b: unknown,
 | |
| ) => boolean | undefined;
 | |
| 
 | |
| export declare function emptyObject(obj: unknown): boolean;
 | |
| 
 | |
| export declare const equals: EqualsFunction;
 | |
| 
 | |
| export declare type EqualsFunction = (
 | |
|   a: unknown,
 | |
|   b: unknown,
 | |
|   customTesters?: Array<Tester>,
 | |
|   strictCheck?: boolean,
 | |
| ) => boolean;
 | |
| 
 | |
| export declare const getObjectKeys: (object: object) => Array<string | symbol>;
 | |
| 
 | |
| export declare const getObjectSubset: (
 | |
|   object: any,
 | |
|   subset: any,
 | |
|   customTesters?: Array<Tester>,
 | |
|   seenReferences?: WeakMap<object, boolean>,
 | |
| ) => any;
 | |
| 
 | |
| declare type GetPath = {
 | |
|   hasEndProp?: boolean;
 | |
|   endPropIsDefined?: boolean;
 | |
|   lastTraversedObject: unknown;
 | |
|   traversedPath: Array<string>;
 | |
|   value?: unknown;
 | |
| };
 | |
| 
 | |
| export declare const getPath: (
 | |
|   object: Record<string, any>,
 | |
|   propertyPath: string | Array<string>,
 | |
| ) => GetPath;
 | |
| 
 | |
| export declare function isA<T>(typeName: string, value: unknown): value is T;
 | |
| 
 | |
| export declare const isError: (value: unknown) => value is Error;
 | |
| 
 | |
| export declare const isOneline: (
 | |
|   expected: unknown,
 | |
|   received: unknown,
 | |
| ) => boolean;
 | |
| 
 | |
| export declare const iterableEquality: (
 | |
|   a: any,
 | |
|   b: any,
 | |
|   customTesters?: Array<Tester>,
 | |
|   aStack?: Array<any>,
 | |
|   bStack?: Array<any>,
 | |
| ) => boolean | undefined;
 | |
| 
 | |
| export declare const partition: <T>(
 | |
|   items: Array<T>,
 | |
|   predicate: (arg: T) => boolean,
 | |
| ) => [Array<T>, Array<T>];
 | |
| 
 | |
| export declare const pathAsArray: (propertyPath: string) => Array<any>;
 | |
| 
 | |
| export declare const sparseArrayEquality: (
 | |
|   a: unknown,
 | |
|   b: unknown,
 | |
|   customTesters?: Array<Tester>,
 | |
| ) => boolean | undefined;
 | |
| 
 | |
| export declare const subsetEquality: (
 | |
|   object: unknown,
 | |
|   subset: unknown,
 | |
|   customTesters?: Array<Tester>,
 | |
| ) => boolean | undefined;
 | |
| 
 | |
| export declare type Tester = (
 | |
|   this: TesterContext,
 | |
|   a: any,
 | |
|   b: any,
 | |
|   customTesters: Array<Tester>,
 | |
| ) => boolean | undefined;
 | |
| 
 | |
| export declare interface TesterContext {
 | |
|   equals: EqualsFunction;
 | |
| }
 | |
| 
 | |
| export declare const typeEquality: (a: any, b: any) => boolean | undefined;
 | |
| 
 | |
| export {};
 |