fix(logging): Improve warning logging and add permission settings file
This commit is contained in:
		| @@ -1,5 +1,12 @@ | ||||
| # Changelog | ||||
|  | ||||
| ## 2025-05-24 - 1.11.4 - fix(logging) | ||||
| Improve warning logging and add permission settings file | ||||
|  | ||||
| - Replace multiple logger.error calls with logger.warning for tests running over 1 minute | ||||
| - Add warning method in tstest logger to display warning messages consistently | ||||
| - Introduce .claude/settings.local.json to configure allowed permissions | ||||
|  | ||||
| ## 2025-05-24 - 1.11.3 - fix(tstest) | ||||
| Add timeout warning for long-running tests and introduce local settings configuration | ||||
|  | ||||
|   | ||||
| @@ -3,6 +3,6 @@ | ||||
|  */ | ||||
| export const commitinfo = { | ||||
|   name: '@git.zone/tstest', | ||||
|   version: '1.11.3', | ||||
|   version: '1.11.4', | ||||
|   description: 'a test utility to run tests that match test/**/*.ts' | ||||
| } | ||||
|   | ||||
| @@ -48,10 +48,9 @@ export class TsTest { | ||||
|     // Start timeout warning timer if no timeout was specified | ||||
|     if (this.timeoutSeconds === null) { | ||||
|       this.timeoutWarningTimer = setTimeout(() => { | ||||
|         // Use the logger instead of console.error to ensure the warning is visible | ||||
|         this.logger.error('Warning: Test is running for more than 1 minute.'); | ||||
|         this.logger.error('Consider using --timeout option to set a timeout for test files.'); | ||||
|         this.logger.error('Example: tstest test --timeout=300 (for 5 minutes)'); | ||||
|         this.logger.warning('Test is running for more than 1 minute.'); | ||||
|         this.logger.warning('Consider using --timeout option to set a timeout for test files.'); | ||||
|         this.logger.warning('Example: tstest test --timeout=300 (for 5 minutes)'); | ||||
|       }, 60000); // 1 minute | ||||
|     } | ||||
|      | ||||
|   | ||||
| @@ -443,6 +443,20 @@ export class TsTestLogger { | ||||
|     this.log(this.format(`\n${status}`, statusColor)); | ||||
|   } | ||||
|    | ||||
|   // Warning display | ||||
|   warning(message: string) { | ||||
|     if (this.options.json) { | ||||
|       this.logJson({ event: 'warning', message }); | ||||
|       return; | ||||
|     } | ||||
|      | ||||
|     if (this.options.quiet) { | ||||
|       console.log(`WARNING: ${message}`); | ||||
|     } else { | ||||
|       this.log(this.format(`   ⚠️  ${message}`, 'orange')); | ||||
|     } | ||||
|   } | ||||
|    | ||||
|   // Error display | ||||
|   error(message: string, file?: string, stack?: string) { | ||||
|     if (this.options.json) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user