Skip to content

Commit 7624414

Browse files
committed
update tests
1 parent d9782f1 commit 7624414

File tree

2 files changed

+10
-33
lines changed

2 files changed

+10
-33
lines changed

test/integration/react-18/prerelease/components/dynamic-suspense.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import { Suspense } from 'react'
22
import dynamic from 'next/dynamic'
33

44
const Hello = dynamic(() => import('./hello'), {
5-
ssr: true,
6-
suspense: true,
5+
ssr: false,
6+
unstable_suspense: false,
77
})
88

99
export default function SuspenseNoSSR({ thrown }) {

test/integration/react-18/test/dynamic.js

Lines changed: 8 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ import { File } from 'next-test-utils'
88
const appDir = join(__dirname, '../prerelease')
99
const page = new File(join(appDir, 'components/dynamic-suspense.js'))
1010

11-
function writeDynamicTestComponent({ ssr = false, suspense = false }) {
11+
function writeDynamicTestComponent({ ssr, suspense = false }) {
1212
const content = `import { Suspense } from 'react'
1313
import dynamic from 'next/dynamic'
1414
1515
const Hello = dynamic(() => import('./hello'), {
16-
ssr: ${ssr},
17-
suspense: ${suspense},
16+
${typeof ssr !== 'undefined' ? `ssr: ${ssr},` : ''}
17+
unstable_suspense: ${suspense},
1818
})
1919
2020
export default function SuspenseNoSSR({ thrown }) {
@@ -34,11 +34,11 @@ export default (context, render) => {
3434
}
3535

3636
describe('suspense:true option', () => {
37+
beforeAll(() => writeDynamicTestComponent({ suspense: true }))
38+
afterAll(() => page.restore())
39+
3740
describe('promise is thrown on server side', () => {
3841
// let `ssr` option be auto overridden
39-
beforeAll(() => writeDynamicTestComponent({ suspense: true }))
40-
afterAll(() => page.restore())
41-
4242
it('should render the fallback on server side', async () => {
4343
const $ = await get$('/suspense/thrown')
4444
const html = $('body').html()
@@ -62,10 +62,11 @@ export default (context, render) => {
6262
})
6363

6464
describe('promise is not thrown on server side', () => {
65+
// TODO: add case after streaming mode is supported
6566
it('should render fallback on server side', async () => {
6667
const $ = await get$('/suspense/no-thrown')
6768
const text = $('#__next').text()
68-
expect(text).toBe('loading')
69+
expect(text).toContain('loading')
6970
})
7071

7172
it('should hydrate on client side', async () => {
@@ -81,28 +82,4 @@ export default (context, render) => {
8182
})
8283
})
8384
})
84-
85-
describe('suspense:false option', () => {
86-
beforeAll(() => writeDynamicTestComponent({ suspense: false, ssr: false }))
87-
afterAll(() => page.restore())
88-
89-
it('should render nothing on server side under Suspense', async () => {
90-
const $ = await get$('/suspense/thrown')
91-
const text = $('#__next').text()
92-
expect(text).toBe('')
93-
expect(JSON.parse($('#__NEXT_DATA__').html()).dynamicIds).toBeUndefined()
94-
})
95-
96-
it('should hydrate suspenses on client side with ssr disabled', async () => {
97-
let browser
98-
try {
99-
browser = await webdriver(context.appPort, '/suspense/no-thrown')
100-
await check(() => browser.elementByCss('body').text(), /hello 18/)
101-
} finally {
102-
if (browser) {
103-
await browser.close()
104-
}
105-
}
106-
})
107-
})
10885
}

0 commit comments

Comments
 (0)