这是indexloc提供的服务,不要输入任何密码
Skip to content

ci(workflow): upload integration test resuls from main branch, next.j… …s release #3502

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 30, 2023

Conversation

kwonoj
Copy link
Contributor

@kwonoj kwonoj commented Jan 26, 2023

Closes WEB-487.

This PR amends existing workflow for next-integration test to store its aggregated test results into github artifacts, then corresponding events for the running test (main branch update / new next.js release) to upload it into specific github branch nextjs-integration-test-data.

@vercel
Copy link

vercel bot commented Jan 26, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated
examples-native-web 🔄 Building (Inspect) Jan 30, 2023 at 5:26PM (UTC)
examples-vite-web 🔄 Building (Inspect) Jan 30, 2023 at 5:26PM (UTC)
8 Ignored Deployments
Name Status Preview Comments Updated
examples-basic-web ⬜️ Ignored (Inspect) Jan 30, 2023 at 5:26PM (UTC)
examples-cra-web ⬜️ Ignored (Inspect) Jan 30, 2023 at 5:26PM (UTC)
examples-designsystem-docs ⬜️ Ignored (Inspect) Jan 30, 2023 at 5:26PM (UTC)
examples-kitchensink-blog ⬜️ Ignored (Inspect) Jan 30, 2023 at 5:26PM (UTC)
examples-nonmonorepo ⬜️ Ignored (Inspect) Jan 30, 2023 at 5:26PM (UTC)
examples-svelte-web ⬜️ Ignored (Inspect) Jan 30, 2023 at 5:26PM (UTC)
examples-tailwind-web ⬜️ Ignored (Inspect) Jan 30, 2023 at 5:26PM (UTC)
turbo-site ⬜️ Ignored (Inspect) Visit Preview Jan 30, 2023 at 5:26PM (UTC)

@github-actions
Copy link
Contributor

github-actions bot commented Jan 26, 2023

🟢 CI successful 🟢

Thanks

@kwonoj kwonoj force-pushed the upload-test-data branch 17 times, most recently from 686509c to dadd44f Compare January 27, 2023 01:13
@github-actions
Copy link
Contributor

Benchmark for 81c2f87

Click to view benchmark
Test Base PR % Significant %
bench_hmr_to_commit/Turbopack CSR/1000 modules 8814.30µs ± 99.83µs 8879.20µs ± 104.58µs +0.74%
bench_hmr_to_commit/Turbopack RCC/1000 modules 8977.97µs ± 60.79µs 8866.37µs ± 58.60µs -1.24%
bench_hmr_to_commit/Turbopack RSC/1000 modules 465.23ms ± 2.36ms 464.93ms ± 3.78ms -0.06%
bench_hmr_to_commit/Turbopack SSR/1000 modules 8987.78µs ± 137.08µs 8874.45µs ± 185.90µs -1.26%
bench_hmr_to_eval/Turbopack CSR/1000 modules 7957.34µs ± 78.79µs 7960.89µs ± 196.65µs +0.04%
bench_hmr_to_eval/Turbopack RCC/1000 modules 7926.31µs ± 65.50µs 7821.44µs ± 78.62µs -1.32%
bench_hmr_to_eval/Turbopack SSR/1000 modules 7982.12µs ± 81.34µs 7846.51µs ± 121.38µs -1.70%
bench_hydration/Turbopack RCC/1000 modules 3646.06ms ± 8.13ms 3645.52ms ± 13.65ms -0.01%
bench_hydration/Turbopack RSC/1000 modules 3200.75ms ± 15.79ms 3168.18ms ± 12.75ms -1.02%
bench_hydration/Turbopack SSR/1000 modules 3008.61ms ± 13.05ms 3015.50ms ± 12.06ms +0.23%
bench_startup/Turbopack CSR/1000 modules 2043.41ms ± 12.31ms 2017.76ms ± 13.53ms -1.26%
bench_startup/Turbopack RCC/1000 modules 2394.77ms ± 10.23ms 2379.05ms ± 9.01ms -0.66%
bench_startup/Turbopack RSC/1000 modules 2293.87ms ± 8.21ms 2308.89ms ± 10.31ms +0.65%
bench_startup/Turbopack SSR/1000 modules 1979.71ms ± 6.49ms 1982.09ms ± 6.41ms +0.12%

@kwonoj kwonoj force-pushed the upload-test-data branch 3 times, most recently from 6c841a1 to 21a114b Compare January 27, 2023 18:34
@github-actions
Copy link
Contributor

Benchmark for fea5d51

Test Base PR % Significant %
bench_hydration/Turbopack SSR/1000 modules 3192.30ms ± 23.68ms 3061.33ms ± 18.14ms -4.10% -1.51%
bench_startup/Turbopack RSC/1000 modules 2737.02ms ± 6.49ms 2763.95ms ± 3.85ms +0.98% +0.23%
Click to view full benchmark
Test Base PR % Significant %
bench_hmr_to_commit/Turbopack CSR/1000 modules 9429.16µs ± 74.13µs 9736.12µs ± 80.46µs +3.26%
bench_hmr_to_commit/Turbopack SSR/1000 modules 9819.68µs ± 92.95µs 9652.52µs ± 92.57µs -1.70%
bench_hmr_to_eval/Turbopack CSR/1000 modules 8586.31µs ± 115.03µs 8688.81µs ± 68.10µs +1.19%
bench_hmr_to_eval/Turbopack SSR/1000 modules 8647.92µs ± 76.61µs 8702.65µs ± 92.26µs +0.63%
bench_hydration/Turbopack SSR/1000 modules 3192.30ms ± 23.68ms 3061.33ms ± 18.14ms -4.10% -1.51%
bench_startup/Turbopack CSR/1000 modules 2055.44ms ± 10.23ms 2070.84ms ± 15.10ms +0.75%
bench_startup/Turbopack RCC/1000 modules 2865.28ms ± 5.34ms 2876.48ms ± 6.65ms +0.39%
bench_startup/Turbopack RSC/1000 modules 2737.02ms ± 6.49ms 2763.95ms ± 3.85ms +0.98% +0.23%
bench_startup/Turbopack SSR/1000 modules 2026.46ms ± 4.22ms 2009.61ms ± 4.46ms -0.83%

@kwonoj kwonoj force-pushed the upload-test-data branch 3 times, most recently from 5ab5028 to 7e1e495 Compare January 27, 2023 21:37
@kwonoj kwonoj force-pushed the upload-test-data branch 10 times, most recently from e5ed684 to 669a23a Compare January 28, 2023 00:44
@kwonoj kwonoj changed the title [DONOTMERGE] wip ci(workflow): upload integration test resuls from main branch, next.j… …s release Jan 28, 2023
@vercel vercel deleted a comment from github-actions bot Jan 28, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Jan 28, 2023

Failing next.js integration test suites

Commit: d3b4459

test/development/acceptance-app/component-stack.test.ts

  • Component Stack in error overlay > should show a component stack on hydration error
Expand output

● Component Stack in error overlay › should show a component stack on hydration error

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('[data-nextjs-toast]')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

test/e2e/ignore-invalid-popstateevent/with-i18n.test.ts

  • i18n: Event with stale state - static route previously was dynamic > Ignore event without query param
  • i18n: Event with stale state - static route previously was dynamic > Ignore event with query param
  • i18n: Event with stale state - static route previously was dynamic > Don't ignore event with different locale
Expand output

● i18n: Event with stale state - static route previously was dynamic › Ignore event without query param

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('#page-type')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

● i18n: Event with stale state - static route previously was dynamic › Ignore event with query param

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('#page-type')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

● i18n: Event with stale state - static route previously was dynamic › Don't ignore event with different locale

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('#page-type')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

test/integration/404-page-app/test/index.test.js

  • 404 Page Support with _app > dev mode > should not show pages/404 GIP error if _app has GIP
Expand output

● 404 Page Support with _app › dev mode › should not show pages/404 GIP error if _app has GIP

expect(received).toBe(expected) // Object.is equality

Expected: 404
Received: 500

  79 |     it('should not show pages/404 GIP error if _app has GIP', async () => {
  80 |       const res = await fetchViaHTTP(appPort, '/abc')
> 81 |       expect(res.status).toBe(404)
     |                          ^
  82 |       const $ = cheerio.load(await res.text())
  83 |       expect($('#404-title').text()).toBe('Hi There')
  84 |       expect(stderr).not.toMatch(gip404Err)

  at Object.<anonymous> (integration/404-page-app/test/index.test.js:81:26)

test/development/acceptance/ReactRefreshRegression.test.ts

  • ReactRefreshRegression > styled-components hydration mismatch
  • ReactRefreshRegression > can fast refresh a page with getStaticProps
  • ReactRefreshRegression > can fast refresh a page with getServerSideProps
  • ReactRefreshRegression > can fast refresh a page with config
  • ReactRefreshRegression > shows an overlay for a server-side error
  • ReactRefreshRegression > custom loader (mdx) should have Fast Refresh enabled
Expand output

● ReactRefreshRegression › styled-components hydration mismatch

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:64:5)

● ReactRefreshRegression › can fast refresh a page with getStaticProps

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:89:5)

● ReactRefreshRegression › can fast refresh a page with getServerSideProps

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:152:5)

● ReactRefreshRegression › can fast refresh a page with config

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:215:5)

● ReactRefreshRegression › shows an overlay for a server-side error

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:278:5)

● ReactRefreshRegression › custom loader (mdx) should have Fast Refresh enabled

expect(received).toBe(expected) // Object.is equality

Expected: "Hello World!"
Received: null

  319 |         () => document.querySelector('#__next').textContent
  320 |       )
> 321 |     ).toBe('Hello World!')
      |       ^
  322 |
  323 |     let didNotReload = await session.patch('pages/index.mdx', `Hello Foo!`)
  324 |     expect(didNotReload).toBe(true)

  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:321:7)

test/e2e/app-dir/app-alias/app-alias.test.ts

  • app-dir alias handling > should handle typescript paths alias correctly
  • app-dir alias handling > should resolve css imports from outside with src folder presented
Expand output

● app-dir alias handling › should handle typescript paths alias correctly

expect(received).toContain(expected) // indexOf

Expected substring: "click</button>"
Received string:    "failed to canonicalize embedded file path·
Caused by:
    No such file or directory (os error 2)"

  14 |     it('should handle typescript paths alias correctly', async () => {
  15 |       const html = await next.render('/button')
> 16 |       expect(html).toContain('click</button>')
     |                    ^
  17 |     })
  18 |
  19 |     it('should resolve css imports from outside with src folder presented', async () => {

  at Object.<anonymous> (e2e/app-dir/app-alias/app-alias.test.ts:16:20)

● app-dir alias handling › should resolve css imports from outside with src folder presented

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('button')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

test/integration/404-page-custom-error/test/index.test.js

  • Default 404 Page with custom _error > dev mode > should respond to 404 correctly
  • Default 404 Page with custom _error > dev mode > should render error correctly
  • Default 404 Page with custom _error > dev mode > should render index page normal
Expand output

● Default 404 Page with custom _error › dev mode › should respond to 404 correctly

expect(received).toBe(expected) // Object.is equality

Expected: 404
Received: 500

  24 |   it('should respond to 404 correctly', async () => {
  25 |     const res = await fetchViaHTTP(appPort, '/404')
> 26 |     expect(res.status).toBe(404)
     |                        ^
  27 |     expect(await res.text()).toContain('This page could not be found')
  28 |   })
  29 |

  at Object.<anonymous> (integration/404-page-custom-error/test/index.test.js:26:24)

● Default 404 Page with custom _error › dev mode › should render error correctly

expect(received).toContain(expected) // indexOf

Expected substring: "oops"
Received string:    "failed to canonicalize embedded file path·
Caused by:
    No such file or directory (os error 2)"

  30 |   it('should render error correctly', async () => {
  31 |     const text = await renderViaHTTP(appPort, '/err')
> 32 |     expect(text).toContain(isDev ? 'oops' : 'Internal Server Error')
     |                  ^
  33 |   })
  34 |
  35 |   it('should render index page normal', async () => {

  at Object.<anonymous> (integration/404-page-custom-error/test/index.test.js:32:18)

● Default 404 Page with custom _error › dev mode › should render index page normal

expect(received).toContain(expected) // indexOf

Expected substring: "hello from index"
Received string:    "failed to canonicalize embedded file path·
Caused by:
    No such file or directory (os error 2)"

  35 |   it('should render index page normal', async () => {
  36 |     const html = await renderViaHTTP(appPort, '/')
> 37 |     expect(html).toContain('hello from index')
     |                  ^
  38 |   })
  39 |
  40 |   if (!isDev) {

  at Object.<anonymous> (integration/404-page-custom-error/test/index.test.js:37:18)

test/development/acceptance-app/component-stack.test.ts

  • Component Stack in error overlay > should show a component stack on hydration error
Expand output

● Component Stack in error overlay › should show a component stack on hydration error

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('[data-nextjs-toast]')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

test/e2e/ignore-invalid-popstateevent/with-i18n.test.ts

  • i18n: Event with stale state - static route previously was dynamic > Ignore event without query param
  • i18n: Event with stale state - static route previously was dynamic > Ignore event with query param
  • i18n: Event with stale state - static route previously was dynamic > Don't ignore event with different locale
Expand output

● i18n: Event with stale state - static route previously was dynamic › Ignore event without query param

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('#page-type')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

● i18n: Event with stale state - static route previously was dynamic › Ignore event with query param

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('#page-type')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

● i18n: Event with stale state - static route previously was dynamic › Don't ignore event with different locale

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('#page-type')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

test/integration/404-page-app/test/index.test.js

  • 404 Page Support with _app > dev mode > should not show pages/404 GIP error if _app has GIP
Expand output

● 404 Page Support with _app › dev mode › should not show pages/404 GIP error if _app has GIP

expect(received).toBe(expected) // Object.is equality

Expected: 404
Received: 500

  79 |     it('should not show pages/404 GIP error if _app has GIP', async () => {
  80 |       const res = await fetchViaHTTP(appPort, '/abc')
> 81 |       expect(res.status).toBe(404)
     |                          ^
  82 |       const $ = cheerio.load(await res.text())
  83 |       expect($('#404-title').text()).toBe('Hi There')
  84 |       expect(stderr).not.toMatch(gip404Err)

  at Object.<anonymous> (integration/404-page-app/test/index.test.js:81:26)

test/development/acceptance/ReactRefreshRegression.test.ts

  • ReactRefreshRegression > styled-components hydration mismatch
  • ReactRefreshRegression > can fast refresh a page with getStaticProps
  • ReactRefreshRegression > can fast refresh a page with getServerSideProps
  • ReactRefreshRegression > can fast refresh a page with config
  • ReactRefreshRegression > shows an overlay for a server-side error
  • ReactRefreshRegression > custom loader (mdx) should have Fast Refresh enabled
Expand output

● ReactRefreshRegression › styled-components hydration mismatch

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:64:5)

● ReactRefreshRegression › can fast refresh a page with getStaticProps

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:89:5)

● ReactRefreshRegression › can fast refresh a page with getServerSideProps

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:152:5)

● ReactRefreshRegression › can fast refresh a page with config

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:215:5)

● ReactRefreshRegression › shows an overlay for a server-side error

Application is in inconsistent state: timeout.

  82 |           }
  83 |           if (status !== 'pending') {
> 84 |             throw new Error(`Application is in inconsistent state: ${status}.`)
     |                   ^
  85 |           }
  86 |
  87 |           await new Promise((resolve) => setTimeout(resolve, 30))

  at Object.patch (development/acceptance/helpers.ts:84:19)
  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:278:5)

● ReactRefreshRegression › custom loader (mdx) should have Fast Refresh enabled

expect(received).toBe(expected) // Object.is equality

Expected: "Hello World!"
Received: null

  319 |         () => document.querySelector('#__next').textContent
  320 |       )
> 321 |     ).toBe('Hello World!')
      |       ^
  322 |
  323 |     let didNotReload = await session.patch('pages/index.mdx', `Hello Foo!`)
  324 |     expect(didNotReload).toBe(true)

  at Object.<anonymous> (development/acceptance/ReactRefreshRegression.test.ts:321:7)

test/e2e/app-dir/app-alias/app-alias.test.ts

  • app-dir alias handling > should handle typescript paths alias correctly
  • app-dir alias handling > should resolve css imports from outside with src folder presented
Expand output

● app-dir alias handling › should handle typescript paths alias correctly

expect(received).toContain(expected) // indexOf

Expected substring: "click</button>"
Received string:    "failed to canonicalize embedded file path·
Caused by:
    No such file or directory (os error 2)"

  14 |     it('should handle typescript paths alias correctly', async () => {
  15 |       const html = await next.render('/button')
> 16 |       expect(html).toContain('click</button>')
     |                    ^
  17 |     })
  18 |
  19 |     it('should resolve css imports from outside with src folder presented', async () => {

  at Object.<anonymous> (e2e/app-dir/app-alias/app-alias.test.ts:16:20)

● app-dir alias handling › should resolve css imports from outside with src folder presented

page.waitForSelector: Timeout 30000ms exceeded.
=========================== logs ===========================
waiting for locator('button')
============================================================

  329 |     return this.chain(() => {
  330 |       return page
> 331 |         .waitForSelector(selector, { timeout, state: 'attached' })
      |          ^
  332 |         .then(async (el) => {
  333 |           // it seems selenium waits longer and tests rely on this behavior
  334 |           // so we wait for the load event fire before returning

  at lib/browsers/playwright.ts:331:10

test/integration/404-page-custom-error/test/index.test.js

  • Default 404 Page with custom _error > dev mode > should respond to 404 correctly
  • Default 404 Page with custom _error > dev mode > should render error correctly
  • Default 404 Page with custom _error > dev mode > should render index page normal
Expand output

● Default 404 Page with custom _error › dev mode › should respond to 404 correctly

expect(received).toBe(expected) // Object.is equality

Expected: 404
Received: 500

  24 |   it('should respond to 404 correctly', async () => {
  25 |     const res = await fetchViaHTTP(appPort, '/404')
> 26 |     expect(res.status).toBe(404)
     |                        ^
  27 |     expect(await res.text()).toContain('This page could not be found')
  28 |   })
  29 |

  at Object.<anonymous> (integration/404-page-custom-error/test/index.test.js:26:24)

● Default 404 Page with custom _error › dev mode › should render error correctly

expect(received).toContain(expected) // indexOf

Expected substring: "oops"
Received string:    "failed to canonicalize embedded file path·
Caused by:
    No such file or directory (os error 2)"

  30 |   it('should render error correctly', async () => {
  31 |     const text = await renderViaHTTP(appPort, '/err')
> 32 |     expect(text).toContain(isDev ? 'oops' : 'Internal Server Error')
     |                  ^
  33 |   })
  34 |
  35 |   it('should render index page normal', async () => {

  at Object.<anonymous> (integration/404-page-custom-error/test/index.test.js:32:18)

● Default 404 Page with custom _error › dev mode › should render index page normal

expect(received).toContain(expected) // indexOf

Expected substring: "hello from index"
Received string:    "failed to canonicalize embedded file path·
Caused by:
    No such file or directory (os error 2)"

  35 |   it('should render index page normal', async () => {
  36 |     const html = await renderViaHTTP(appPort, '/')
> 37 |     expect(html).toContain('hello from index')
     |                  ^
  38 |   })
  39 |
  40 |   if (!isDev) {

  at Object.<anonymous> (integration/404-page-custom-error/test/index.test.js:37:18)

@kwonoj kwonoj marked this pull request as ready for review January 28, 2023 01:06
@kwonoj kwonoj requested review from a team as code owners January 28, 2023 01:06
@github-actions
Copy link
Contributor

Benchmark for 94a40fa

Click to view benchmark
Test Base PR % Significant %
bench_hmr_to_commit/Turbopack CSR/1000 modules 9085.92µs ± 97.99µs 9139.44µs ± 98.67µs +0.59%
bench_hmr_to_commit/Turbopack RCC/1000 modules 9323.50µs ± 70.16µs 9197.76µs ± 82.91µs -1.35%
bench_hmr_to_commit/Turbopack RSC/1000 modules 475.39ms ± 3.41ms 473.48ms ± 1.32ms -0.40%
bench_hmr_to_commit/Turbopack SSR/1000 modules 9297.90µs ± 102.96µs 9190.57µs ± 56.21µs -1.15%
bench_hmr_to_eval/Turbopack CSR/1000 modules 8152.26µs ± 75.42µs 8135.31µs ± 76.24µs -0.21%
bench_hmr_to_eval/Turbopack RCC/1000 modules 8338.34µs ± 76.98µs 8382.12µs ± 45.78µs +0.53%
bench_hmr_to_eval/Turbopack SSR/1000 modules 8377.18µs ± 68.42µs 8358.33µs ± 83.19µs -0.22%
bench_hydration/Turbopack RCC/1000 modules 3705.48ms ± 8.78ms 3698.27ms ± 9.40ms -0.19%
bench_hydration/Turbopack RSC/1000 modules 3227.31ms ± 8.26ms 3208.54ms ± 13.24ms -0.58%
bench_hydration/Turbopack SSR/1000 modules 3024.33ms ± 6.53ms 3003.68ms ± 8.71ms -0.68%
bench_startup/Turbopack CSR/1000 modules 2019.27ms ± 10.23ms 2038.48ms ± 8.22ms +0.95%
bench_startup/Turbopack RCC/1000 modules 2461.53ms ± 9.30ms 2449.01ms ± 5.45ms -0.51%
bench_startup/Turbopack RSC/1000 modules 2365.82ms ± 5.63ms 2361.28ms ± 5.57ms -0.19%
bench_startup/Turbopack SSR/1000 modules 1996.52ms ± 4.27ms 2004.50ms ± 5.25ms +0.40%

Copy link
Member

@wbinnssmith wbinnssmith left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general, I'm a little worried about this breaking (maybe silently) because of its reliance on log formats, marker strings, etc.

.map((line) => line.substr("2020-03-02T19:39:16.8832288Z ".length));

const nextjsVersion = dateTimeStripped
.find((x) => x.includes("RUNNING NEXTJS VERSION:") && !x.includes("$("))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: extract "RUNNING NEXTJS VERSION:" into a const?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yup, will do it following pr for the formatting changes.

@kwonoj kwonoj added the pr: automerge Kodiak will merge these automatically after checks pass label Jan 30, 2023
@github-actions
Copy link
Contributor

Benchmark for d3b4459

Test Base PR % Significant %
bench_hmr_to_commit/Turbopack CSR/1000 modules 8600.09µs ± 35.59µs 8417.60µs ± 50.94µs -2.12% -0.11%
bench_hmr_to_commit/Turbopack RCC/1000 modules 9447.26µs ± 60.82µs 9107.23µs ± 77.82µs -3.60% -0.67%
Click to view full benchmark
Test Base PR % Significant %
bench_hmr_to_commit/Turbopack CSR/1000 modules 8600.09µs ± 35.59µs 8417.60µs ± 50.94µs -2.12% -0.11%
bench_hmr_to_commit/Turbopack RCC/1000 modules 9447.26µs ± 60.82µs 9107.23µs ± 77.82µs -3.60% -0.67%
bench_hmr_to_commit/Turbopack RSC/1000 modules 464.16ms ± 1.21ms 469.39ms ± 4.54ms +1.13%
bench_hmr_to_commit/Turbopack SSR/1000 modules 8942.62µs ± 73.29µs 8861.74µs ± 65.78µs -0.90%
bench_hmr_to_eval/Turbopack CSR/1000 modules 7858.91µs ± 69.01µs 7689.79µs ± 56.68µs -2.15%
bench_hmr_to_eval/Turbopack RCC/1000 modules 7878.76µs ± 68.85µs 7981.37µs ± 90.07µs +1.30%
bench_hmr_to_eval/Turbopack SSR/1000 modules 7925.89µs ± 81.27µs 8164.33µs ± 89.17µs +3.01%
bench_hydration/Turbopack RCC/1000 modules 3664.06ms ± 13.44ms 3648.93ms ± 8.66ms -0.41%
bench_hydration/Turbopack RSC/1000 modules 3197.89ms ± 10.76ms 3188.13ms ± 9.36ms -0.31%
bench_hydration/Turbopack SSR/1000 modules 2974.03ms ± 4.80ms 2990.19ms ± 9.13ms +0.54%
bench_startup/Turbopack CSR/1000 modules 2032.35ms ± 8.92ms 2034.34ms ± 10.26ms +0.10%
bench_startup/Turbopack RCC/1000 modules 2435.20ms ± 5.99ms 2430.36ms ± 3.83ms -0.20%
bench_startup/Turbopack RSC/1000 modules 2323.66ms ± 9.26ms 2328.98ms ± 7.79ms +0.23%
bench_startup/Turbopack SSR/1000 modules 1979.70ms ± 3.94ms 1983.13ms ± 3.23ms +0.17%

@kodiakhq kodiakhq bot merged commit 236442e into main Jan 30, 2023
@kodiakhq kodiakhq bot deleted the upload-test-data branch January 30, 2023 19:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: ci pr: automerge Kodiak will merge these automatically after checks pass
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants