Skip to content

Commit b787cb7

Browse files
committed
add test
1 parent 95700ba commit b787cb7

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

packages/browser/src/sdk.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ function shouldShowBrowserExtensionError(): boolean {
8686
const isDedicatedExtensionPage =
8787
!!runtimeId && WINDOW === WINDOW.top && extensionProtocols.some(protocol => href.startsWith(`${protocol}//`));
8888

89-
// Running in NW.js, which appears like a browser extension but isn't is also fine
89+
// Running the SDK in NW.js, which appears like a browser extension but isn't, is also fine
9090
// see: https://github.com/getsentry/sentry-javascript/issues/12668
9191
const isNWjs = typeof windowWithMaybeExtension.nw !== 'undefined';
9292

packages/browser/test/unit/sdk.test.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ describe('init', () => {
142142
afterEach(() => {
143143
Object.defineProperty(WINDOW, 'chrome', { value: undefined, writable: true });
144144
Object.defineProperty(WINDOW, 'browser', { value: undefined, writable: true });
145+
Object.defineProperty(WINDOW, 'nw', { value: undefined, writable: true });
145146
});
146147

147148
it('logs a browser extension error if executed inside a Chrome extension', () => {
@@ -210,6 +211,18 @@ describe('init', () => {
210211
consoleErrorSpy.mockRestore();
211212
});
212213

214+
it("doesn't log a browser extension error if executed inside an NW.js environment", () => {
215+
const consoleErrorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
216+
217+
Object.defineProperty(WINDOW, 'nw', { value: {} });
218+
219+
init(options);
220+
221+
expect(consoleErrorSpy).not.toHaveBeenCalled();
222+
223+
consoleErrorSpy.mockRestore();
224+
});
225+
213226
it("doesn't return a client on initialization error", () => {
214227
const consoleErrorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
215228

0 commit comments

Comments
 (0)