diff --git a/packages/core/test/lib/base.test.ts b/packages/core/test/lib/base.test.ts index 6660af09f339..aca8784ad511 100644 --- a/packages/core/test/lib/base.test.ts +++ b/packages/core/test/lib/base.test.ts @@ -77,7 +77,7 @@ describe('BaseClient', () => { expect(client.getTransport()).toBeUndefined(); }); - test('allows being passed an invalid Dsn', () => { + test('handles being passed an invalid Dsn', () => { const options = getDefaultTestClientOptions({ dsn: 'abc' }); const client = new TestClient(options); diff --git a/packages/utils/src/dsn.ts b/packages/utils/src/dsn.ts index 20c3cbe37197..f149b67a9386 100644 --- a/packages/utils/src/dsn.ts +++ b/packages/utils/src/dsn.ts @@ -1,6 +1,5 @@ import type { DsnComponents, DsnLike, DsnProtocol } from '@sentry/types'; -import { SentryError } from './error'; import { logger } from './logger'; /** Regular expression used to parse a Dsn. */ @@ -37,7 +36,9 @@ export function dsnFromString(str: string): DsnComponents | undefined { const match = DSN_REGEX.exec(str); if (!match) { - logger.error(`Invalid Sentry Dsn: ${str}`); + // This should be logged to the console + // eslint-disable-next-line no-console + console.error(`Invalid Sentry Dsn: ${str}`); return undefined; } diff --git a/packages/utils/test/dsn.test.ts b/packages/utils/test/dsn.test.ts index 7dfcad0122b1..3de435bf5fcf 100644 --- a/packages/utils/test/dsn.test.ts +++ b/packages/utils/test/dsn.test.ts @@ -5,11 +5,12 @@ function testIf(condition: boolean): jest.It { return condition ? test : test.skip; } -const loggerSpy = jest.spyOn(logger, 'error').mockImplementation(() => {}); +const loggerErrorSpy = jest.spyOn(logger, 'error').mockImplementation(() => {}); +const consoleErrorSpy = jest.spyOn(console, 'error').mockImplementation(() => {}); describe('Dsn', () => { beforeEach(() => { - loggerSpy.mockClear(); + jest.clearAllMocks(); }); describe('fromComponents', () => { @@ -81,7 +82,7 @@ describe('Dsn', () => { }), ).toBeUndefined(); - expect(logger.error).toHaveBeenCalledTimes(4); + expect(loggerErrorSpy).toHaveBeenCalledTimes(4); }); testIf(__DEBUG_BUILD__)('returns `undefined` if components are invalid', () => { @@ -103,7 +104,7 @@ describe('Dsn', () => { }), ).toBeUndefined(); - expect(logger.error).toHaveBeenCalledTimes(2); + expect(loggerErrorSpy).toHaveBeenCalledTimes(2); }); }); @@ -165,7 +166,7 @@ describe('Dsn', () => { testIf(__DEBUG_BUILD__)('returns undefined when provided invalid Dsn', () => { expect(makeDsn('some@random.dsn')).toBeUndefined(); - expect(logger.error).toHaveBeenCalledTimes(1); + expect(consoleErrorSpy).toHaveBeenCalledTimes(1); }); testIf(__DEBUG_BUILD__)('returns undefined if mandatory fields are missing', () => { @@ -173,14 +174,15 @@ describe('Dsn', () => { expect(makeDsn('https://@sentry.io/123')).toBeUndefined(); expect(makeDsn('https://abc@123')).toBeUndefined(); expect(makeDsn('https://abc@sentry.io/')).toBeUndefined(); - expect(logger.error).toHaveBeenCalledTimes(4); + expect(consoleErrorSpy).toHaveBeenCalledTimes(4); }); testIf(__DEBUG_BUILD__)('returns undefined if fields are invalid', () => { expect(makeDsn('httpx://abc@sentry.io/123')).toBeUndefined(); expect(makeDsn('httpx://abc@sentry.io:xxx/123')).toBeUndefined(); expect(makeDsn('http://abc@sentry.io/abc')).toBeUndefined(); - expect(logger.error).toHaveBeenCalledTimes(3); + expect(loggerErrorSpy).toHaveBeenCalledTimes(2); + expect(consoleErrorSpy).toHaveBeenCalledTimes(1); }); });