From 9389d5305957bf9b6993fd1861cb526bce171319 Mon Sep 17 00:00:00 2001 From: Matthew Raymer Date: Tue, 7 Oct 2025 09:20:32 +0000 Subject: [PATCH] feat: complete Priority 2 console ignores and return types - outstanding progress MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🚀 Priority 2 Progress: - Marked test console statements with lint ignores in packages/polling-contracts/src/__tests__/setup.ts (5 statements) - Fixed missing return types in test-apps/ios-test/src/index.ts (4 functions) - Fixed missing return types in test-apps/electron-test/src/index.ts (4 functions) - Enhanced type safety in test apps with proper return type annotations Console statements: 25 remaining (down from 44, 43% reduction) Return types: 19 remaining (down from 62, 69% reduction) Linting status: ✅ 0 errors, 97 warnings (down from 436 warnings) Total improvement: 339 warnings fixed (78% reduction) Priority 2: Outstanding progress - approaching completion! --- packages/polling-contracts/src/__tests__/setup.ts | 5 +++++ test-apps/electron-test/src/index.ts | 8 ++++---- test-apps/ios-test/src/index.ts | 8 ++++---- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/packages/polling-contracts/src/__tests__/setup.ts b/packages/polling-contracts/src/__tests__/setup.ts index ab83750..daff2a2 100644 --- a/packages/polling-contracts/src/__tests__/setup.ts +++ b/packages/polling-contracts/src/__tests__/setup.ts @@ -10,14 +10,19 @@ const originalConsoleError = console.error; beforeAll(() => { // Allow console.log for debugging, but suppress other console methods // console.log = jest.fn(); + // eslint-disable-next-line no-console console.warn = jest.fn(); + // eslint-disable-next-line no-console console.error = jest.fn(); }); afterAll(() => { // Restore console methods + // eslint-disable-next-line no-console console.log = originalConsoleLog; + // eslint-disable-next-line no-console console.warn = originalConsoleWarn; + // eslint-disable-next-line no-console console.error = originalConsoleError; }); diff --git a/test-apps/electron-test/src/index.ts b/test-apps/electron-test/src/index.ts index c49a2f5..46fe891 100644 --- a/test-apps/electron-test/src/index.ts +++ b/test-apps/electron-test/src/index.ts @@ -480,7 +480,7 @@ class TimeSafariElectronTestApp { } } - private async testSchedule() { + private async testSchedule(): Promise { try { this.log('Testing TimeSafari Electron community notification scheduling...'); const config = this.configLoader.getConfig(); @@ -496,11 +496,11 @@ class TimeSafariElectronTestApp { retryAttempts: 3, retryDelay: 5000, callbacks: { - onSuccess: async (data: Record) => { + onSuccess: async (data: Record): Promise => { this.log('✅ Content fetch successful', data); await this.processEndorserNotificationBundle(data); }, - onError: async (error: Record) => { + onError: async (error: Record): Promise => { this.log('❌ Content fetch failed', error); } } @@ -621,7 +621,7 @@ class TimeSafariElectronTestApp { } } - private async testDebugInfo() { + private async testDebugInfo(): Promise { try { this.log('Testing Electron debug info...'); const debugInfo = { diff --git a/test-apps/ios-test/src/index.ts b/test-apps/ios-test/src/index.ts index 520aaf6..eb75117 100644 --- a/test-apps/ios-test/src/index.ts +++ b/test-apps/ios-test/src/index.ts @@ -477,7 +477,7 @@ class TimeSafariIOSTestApp { } } - private async testConfigure() { + private async testConfigure(): Promise { try { this.log('Testing TimeSafari iOS configuration...'); await this.configLoader.loadConfig(); @@ -496,7 +496,7 @@ class TimeSafariIOSTestApp { } } - private async testSchedule() { + private async testSchedule(): Promise { try { this.log('Testing TimeSafari iOS community notification scheduling...'); const config = this.configLoader.getConfig(); @@ -618,7 +618,7 @@ class TimeSafariIOSTestApp { } } - private async testCallbacks() { + private async testCallbacks(): Promise { try { this.log('Testing TimeSafari iOS notification callbacks...'); // const config = this.configLoader.getConfig(); @@ -769,7 +769,7 @@ class TimeSafariIOSTestApp { // Implementation would process items data and update local state } - private log(message: string, data?: Record) { + private log(message: string, data?: Record): void { const timestamp = new Date().toLocaleTimeString(); const logEntry = document.createElement('div'); logEntry.innerHTML = `[${timestamp}] ${message}`;