55 editFileAndWaitForHmrComplete ,
66 untilUpdated ,
77 sleep ,
8- getColor
8+ getColor ,
9+ editFile
910} from '../../testUtils' ;
1011
1112test ( 'should render App' , async ( ) => {
@@ -86,8 +87,8 @@ if (!isBuild) {
8687 await updateHmrTest ( ( content ) =>
8788 content . replace ( '<!-- HMR-TEMPLATE-INJECT -->' , '<span/>\n<!-- HMR-TEMPLATE-INJECT -->' )
8889 ) ;
89- await expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
90- await expect ( await getText ( `#hmr-test-2 .counter` ) ) . toBe ( '0' ) ;
90+ expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
91+ expect ( await getText ( `#hmr-test-2 .counter` ) ) . toBe ( '0' ) ;
9192 } ) ;
9293
9394 test ( 'should preserve state of external store used by HmrTest.svelte when editing App.svelte' , async ( ) => {
@@ -99,10 +100,10 @@ if (!isBuild) {
99100 )
100101 ) ;
101102 // counter state is preserved
102- await expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
103- await expect ( await getText ( `#hmr-test-2 .counter` ) ) . toBe ( '0' ) ;
103+ expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
104+ expect ( await getText ( `#hmr-test-2 .counter` ) ) . toBe ( '0' ) ;
104105 // a third instance has been added
105- await expect ( await getText ( `#hmr-test-3 .counter` ) ) . toBe ( '0' ) ;
106+ expect ( await getText ( `#hmr-test-3 .counter` ) ) . toBe ( '0' ) ;
106107 } ) ;
107108
108109 test ( 'should preserve state of store when editing hmr-stores.js' , async ( ) => {
@@ -112,10 +113,25 @@ if (!isBuild) {
112113 // update store
113114 await updateStore ( ( content ) => `${ content } \n/*trigger change*/\n` ) ;
114115 // counter state is preserved
115- await expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
116- await expect ( await getText ( `#hmr-test-2 .counter` ) ) . toBe ( '1' ) ;
116+ expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
117+ expect ( await getText ( `#hmr-test-2 .counter` ) ) . toBe ( '1' ) ;
117118 // a third instance has been added
118- await expect ( await getText ( `#hmr-test-3 .counter` ) ) . toBe ( '0' ) ;
119+ expect ( await getText ( `#hmr-test-3 .counter` ) ) . toBe ( '0' ) ;
120+ } ) ;
121+
122+ test ( 'should work with emitCss: false' , async ( ) => {
123+ await editFile ( 'vite.config.js' , ( c ) => c . replace ( 'svelte()' , 'svelte({emitCss:false})' ) ) ;
124+ await sleep ( 500 ) ; // editing vite config restarts server, give it some time
125+ await page . goto ( viteTestUrl , { waitUntil : 'networkidle' } ) ;
126+ await sleep ( 50 ) ;
127+ expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '0' ) ;
128+ expect ( await getColor ( `#hmr-test-1 .label` ) ) . toBe ( 'green' ) ;
129+ await ( await getEl ( `#hmr-test-1 .increment` ) ) . click ( ) ;
130+ await sleep ( 50 ) ;
131+ expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
132+ await updateHmrTest ( ( content ) => content . replace ( 'color: green' , 'color: red' ) ) ;
133+ expect ( await getColor ( `#hmr-test-1 .label` ) ) . toBe ( 'red' ) ;
134+ expect ( await getText ( `#hmr-test-1 .counter` ) ) . toBe ( '1' ) ;
119135 } ) ;
120136 } ) ;
121137}
0 commit comments