diff --git a/src/databaseModel.ts b/src/databaseModel.ts index d8401b3..db20a05 100644 --- a/src/databaseModel.ts +++ b/src/databaseModel.ts @@ -377,7 +377,7 @@ export class DatabaseDocument extends Disposable implements vsc.CustomDocument { return; } catch (e) { // Fallback if direct write fails - console.warn('Direct write failed, falling back to buffer transfer', e); + this.viewerProvider.outputChannel?.appendLine(`[Fallback] Direct write failed, falling back to buffer transfer: ${e instanceof Error ? e.message : String(e)}`); } } @@ -425,7 +425,7 @@ export class DatabaseDocument extends Disposable implements vsc.CustomDocument { await this.databaseOperations.writeToFile(targetUri.fsPath); return; } catch (e) { - console.warn('Direct write failed, falling back to buffer transfer', e); + this.viewerProvider.outputChannel?.appendLine(`[Fallback] Direct write failed, falling back to buffer transfer: ${e instanceof Error ? e.message : String(e)}`); } } diff --git a/tests/unit/databaseModel.test.ts b/tests/unit/databaseModel.test.ts index 91031b2..c855e8e 100644 --- a/tests/unit/databaseModel.test.ts +++ b/tests/unit/databaseModel.test.ts @@ -365,15 +365,14 @@ describe('DatabaseDocument save/saveAs fallback', () => { configurable: true }); - const originalConsoleWarn = console.warn; let consoleWarnCalled = false; - console.warn = (msg: string, err: any) => { - if (msg && msg.includes('Direct write failed')) { - consoleWarnCalled = true; - } else { - originalConsoleWarn(msg, err); + doc.viewerProvider.outputChannel = { + appendLine: (msg: string) => { + if (msg && msg.includes('Direct write failed')) { + consoleWarnCalled = true; + } } - }; + } as any; try { await doc.saveAs(targetUri, undefined); @@ -388,7 +387,7 @@ describe('DatabaseDocument save/saveAs fallback', () => { writable: true, configurable: true }); - console.warn = originalConsoleWarn; + } }); @@ -424,15 +423,14 @@ describe('DatabaseDocument save/saveAs fallback', () => { configurable: true }); - const originalConsoleWarn = console.warn; let consoleWarnCalled = false; - console.warn = (msg: string, err: any) => { - if (msg && msg.includes('Direct write failed')) { - consoleWarnCalled = true; - } else { - originalConsoleWarn(msg, err); + doc.viewerProvider.outputChannel = { + appendLine: (msg: string) => { + if (msg && msg.includes('Direct write failed')) { + consoleWarnCalled = true; + } } - }; + } as any; try { await doc.save(); @@ -446,7 +444,7 @@ describe('DatabaseDocument save/saveAs fallback', () => { writable: true, configurable: true }); - console.warn = originalConsoleWarn; + } });