@@ -12,20 +12,18 @@ describe("register", () => {
1212
1313 let spy : jest . SpyInstance
1414 let loggerSpy : jest . SpyInstance
15+ const mockRegisterFn = jest . fn ( ( ) => console . log ( "Mock register fn called" ) )
1516
1617 beforeAll ( ( ) => {
1718 Object . defineProperty ( global . navigator , "serviceWorker" , {
1819 value : {
19- register : ( ) => {
20- return "hello"
21- } ,
20+ register : mockRegisterFn ,
2221 } ,
2322 } )
2423 } )
2524
2625 beforeEach ( ( ) => {
2726 spy = jest . spyOn ( global . navigator . serviceWorker , "register" )
28- loggerSpy = jest . spyOn ( logger , "error" )
2927 } )
3028
3129 afterEach ( ( ) => {
@@ -38,7 +36,8 @@ describe("register", () => {
3836 jest . restoreAllMocks ( )
3937 } )
4038
41- it . skip ( "should register a ServiceWorker" , ( ) => {
39+ it ( "should register a ServiceWorker" , ( ) => {
40+ spy = jest . spyOn ( global . navigator . serviceWorker , "register" )
4241 // Load service worker like you would in the browser
4342 require ( "../src/browser/register" )
4443 // Load service worker like you would in the browser
@@ -48,18 +47,27 @@ describe("register", () => {
4847 } )
4948
5049 it ( "should log an error if something doesn't work" , ( ) => {
50+ mockRegisterFn . mockImplementation ( ( ) => console . log ( "frick ya" ) )
51+ loggerSpy = jest . spyOn ( logger , "error" )
5152 const message = "Can't find browser"
5253 const error = new Error ( message )
5354 global . navigator . serviceWorker . register = ( ) => {
55+ console . log ( "errror here" )
5456 throw error
5557 }
58+ console . log ( global . navigator . serviceWorker . register . toString ( ) )
59+ spy = jest . spyOn ( global . navigator . serviceWorker , "register" )
60+ spy . mockResolvedValue ( ( ) => {
61+ throw error
62+ } )
5663
5764 // Load service worker like you would in the browser
5865 require ( "../src/browser/register" )
5966
6067 expect ( loggerSpy ) . toHaveBeenCalled ( )
61- expect ( loggerSpy ) . toHaveBeenCalledTimes ( 1 )
68+ expect ( spy ) . toHaveBeenCalled ( )
69+ // expect(loggerSpy).toHaveBeenCalledTimes(1)
6270 // Because we use logError, it will log the prefix along with the error message
63- expect ( loggerSpy ) . toHaveBeenCalledWith ( `[Service Worker] registration: ${ error . message } ${ error . stack } ` )
71+ // expect(loggerSpy).toHaveBeenCalledWith(`[Service Worker] registration: ${error.message} ${error.stack}`)
6472 } )
6573} )
0 commit comments