1- /**
2- * @vitest -environment jsdom
3- */
41import {
52 beforeEach , describe , expect , it , vi ,
63} from 'vitest'
@@ -13,8 +10,6 @@ import Loader from '../loader.js'
1310type PromiseResolver = ( value ?: unknown ) => void ;
1411type PromiseRejecter = ( reason ?: unknown ) => unknown ;
1512
16- const LOADER_ELEMENT = '#js-page-loader'
17-
1813const promiseResolverStub : PromiseResolver = ( ) => { }
1914const promiseRejecterStub : PromiseRejecter = ( ) => { }
2015
@@ -32,7 +27,7 @@ describe('promise-loading-spinner', () => {
3227 // eslint-disable-next-line sonarjs/no-duplicate-string
3328 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
3429
35- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
30+ const loader = new Loader ( ) // Initialize the loader
3631
3732 // Loader is initialized
3833 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -67,7 +62,7 @@ describe('promise-loading-spinner', () => {
6762 it ( 'handles a single promise (error)' , async ( ) => {
6863 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
6964
70- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
65+ const loader = new Loader ( ) // Initialize the loader
7166
7267 // Loader is initialized
7368 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -102,7 +97,7 @@ describe('promise-loading-spinner', () => {
10297 it ( 'handles a promise that resolves in the delay phase)' , async ( ) => {
10398 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
10499
105- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
100+ const loader = new Loader ( ) // Initialize the loader
106101
107102 // Loader is initialized
108103 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -133,7 +128,7 @@ describe('promise-loading-spinner', () => {
133128 it ( 'does\'t show a loader directly at page load (init delay)' , async ( ) => {
134129 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
135130
136- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
131+ const loader = new Loader ( ) // Initialize the loader
137132
138133 // Loader is initialized
139134 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -164,7 +159,7 @@ describe('promise-loading-spinner', () => {
164159 it ( 'forces a loader directly at page load (init delay)' , async ( ) => {
165160 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
166161
167- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
162+ const loader = new Loader ( ) // Initialize the loader
168163
169164 // Loader is initialized
170165 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -197,7 +192,7 @@ describe('promise-loading-spinner', () => {
197192 it ( 'processes two promises (added second in delay phase)' , async ( ) => {
198193 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
199194
200- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
195+ const loader = new Loader ( ) // Initialize the loader
201196
202197 // Loader is initialized
203198 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -248,7 +243,7 @@ describe('promise-loading-spinner', () => {
248243 it ( 'processes two promises (added second after delay phase)' , async ( ) => {
249244 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
250245
251- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
246+ const loader = new Loader ( ) // Initialize the loader
252247
253248 // Loader is initialized
254249 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -299,7 +294,7 @@ describe('promise-loading-spinner', () => {
299294 it ( 'processes two promises (added second directly after resolving first)' , async ( ) => {
300295 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
301296
302- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
297+ const loader = new Loader ( ) // Initialize the loader
303298
304299 // Loader is initialized
305300 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -356,7 +351,7 @@ describe('promise-loading-spinner', () => {
356351 it ( 'processes two promises (added second after close delay)' , async ( ) => {
357352 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
358353
359- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
354+ const loader = new Loader ( ) // Initialize the loader
360355
361356 // Loader is initialized
362357 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -512,7 +507,6 @@ describe('promise-loading-spinner', () => {
512507 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
513508
514509 const loader = new Loader ( {
515- loaderElement : LOADER_ELEMENT ,
516510 classActive : 'loading' ,
517511 } ) // Initialize the loader
518512
@@ -555,7 +549,6 @@ describe('promise-loading-spinner', () => {
555549 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
556550
557551 const loader = new Loader ( {
558- loaderElement : LOADER_ELEMENT ,
559552 delay : 0 ,
560553 } ) // Initialize the loader
561554
@@ -591,7 +584,6 @@ describe('promise-loading-spinner', () => {
591584 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
592585
593586 const loader = new Loader ( { // Initialize the loader
594- loaderElement : LOADER_ELEMENT ,
595587 initDelay : 0 ,
596588 } )
597589
@@ -621,7 +613,6 @@ describe('promise-loading-spinner', () => {
621613 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
622614
623615 const loader = new Loader ( { // Initialize the loader
624- loaderElement : LOADER_ELEMENT ,
625616 closeDelay : 0 ,
626617 } )
627618
@@ -653,7 +644,7 @@ describe('promise-loading-spinner', () => {
653644 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
654645 } )
655646
656- it ( 'needs an element or signal' , ( ) => {
647+ it . skip ( 'needs an element or signal' , ( ) => {
657648 expect ( ( ) => {
658649 // eslint-disable-next-line no-new
659650 new Loader ( {
@@ -702,7 +693,7 @@ describe('promise-loading-spinner', () => {
702693 it ( 'can export a function wrapper' , async ( ) => {
703694 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
704695
705- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
696+ const loader = new Loader ( ) // Initialize the loader
706697
707698 // Loader is initialized
708699 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -761,7 +752,7 @@ describe('promise-loading-spinner', () => {
761752 it ( 'can export a decorator' , async ( ) => {
762753 const loaderElement = document . getElementById ( 'js-page-loader' ) as HTMLElement
763754
764- const loader = new Loader ( { loaderElement : LOADER_ELEMENT } ) // Initialize the loader
755+ const loader = new Loader ( ) // Initialize the loader
765756
766757 // Loader is initialized
767758 expect ( loaderElement . classList . contains ( 'is-active' ) ) . toBe ( false )
@@ -830,7 +821,6 @@ describe('promise-loading-spinner', () => {
830821 describe ( 'currentLoadingPromise' , ( ) => {
831822 it ( 'returns a promise for the currently shown loader' , async ( ) => {
832823 const loader = new Loader ( { // Initialize the loader
833- loaderElement : LOADER_ELEMENT ,
834824 delay : 666 ,
835825 } )
836826
0 commit comments