Skip to content
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

test: assert that app exited without signal #74087

Merged
merged 1 commit into from
Dec 18, 2024

Conversation

lubieowoce
Copy link
Member

@lubieowoce lubieowoce commented Dec 18, 2024

we've seen these tests flake with this error:

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

    Expected: 0
    Received: null

      234 |         // App finally shuts down
      235 |         await appKilledPromise
    > 236 |         expect(app.exitCode).toBe(0)
          |                              ^
      237 |       })
      238 |     })
      239 |   }

      at Object.toBe (production/graceful-shutdown/index.test.ts:236:

this PR doesn't fix that, but it should make it easier to see why the code was null -- if signal is nonnull, we'll see what it was.

note: once(app, 'exit') returns the arguments passed to the exit callback, which are (code, signal)

@ijjk ijjk added created-by: Next.js team PRs by the Next.js team. tests labels Dec 18, 2024
@lubieowoce lubieowoce changed the title test: assert that app exited on its own test: assert that app exited without signal Dec 18, 2024
@lubieowoce lubieowoce force-pushed the lubieowoce/shutdown-test-debug branch from 4a63347 to 9658791 Compare December 18, 2024 19:14
@lubieowoce lubieowoce requested a review from bgw December 18, 2024 19:14
@lubieowoce lubieowoce enabled auto-merge (squash) December 18, 2024 19:16
@lubieowoce lubieowoce disabled auto-merge December 18, 2024 19:17
@lubieowoce lubieowoce enabled auto-merge (squash) December 18, 2024 19:17
@ijjk
Copy link
Member

ijjk commented Dec 18, 2024

Stats from current PR

Default Build (Increase detected ⚠️)
General
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
buildDuration 18.1s 16.2s N/A
buildDurationCached 15.2s 13s N/A
nodeModulesSize 416 MB 416 MB N/A
nextStartRea..uration (ms) 456ms 456ms
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
1187-HASH.js gzip 52.4 kB 52.4 kB N/A
8276.HASH.js gzip 169 B 168 B N/A
8377-HASH.js gzip 5.36 kB 5.36 kB N/A
bccd1874-HASH.js gzip 53 kB 53 kB N/A
framework-HASH.js gzip 57.5 kB 57.5 kB N/A
main-app-HASH.js gzip 232 B 235 B N/A
main-HASH.js gzip 34.1 kB 34.1 kB N/A
webpack-HASH.js gzip 1.71 kB 1.71 kB N/A
Overall change 0 B 0 B
Legacy Client Bundles (polyfills)
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
polyfills-HASH.js gzip 39.4 kB 39.4 kB
Overall change 39.4 kB 39.4 kB
Client Pages
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
_app-HASH.js gzip 193 B 193 B
_error-HASH.js gzip 193 B 193 B
amp-HASH.js gzip 512 B 510 B N/A
css-HASH.js gzip 343 B 342 B N/A
dynamic-HASH.js gzip 1.84 kB 1.84 kB
edge-ssr-HASH.js gzip 265 B 265 B
head-HASH.js gzip 363 B 362 B N/A
hooks-HASH.js gzip 393 B 392 B N/A
image-HASH.js gzip 4.49 kB 4.49 kB N/A
index-HASH.js gzip 268 B 268 B
link-HASH.js gzip 2.35 kB 2.34 kB N/A
routerDirect..HASH.js gzip 328 B 328 B
script-HASH.js gzip 397 B 397 B
withRouter-HASH.js gzip 323 B 326 B N/A
1afbb74e6ecf..834.css gzip 106 B 106 B
Overall change 3.59 kB 3.59 kB
Client Build Manifests
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
_buildManifest.js gzip 749 B 746 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
index.html gzip 523 B 524 B N/A
link.html gzip 538 B 538 B
withRouter.html gzip 519 B 521 B N/A
Overall change 538 B 538 B
Edge SSR bundle Size
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
edge-ssr.js gzip 129 kB 129 kB N/A
page.js gzip 205 kB 205 kB N/A
Overall change 0 B 0 B
Middleware size
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
middleware-b..fest.js gzip 667 B 669 B N/A
middleware-r..fest.js gzip 155 B 156 B N/A
middleware.js gzip 31.3 kB 31.3 kB N/A
edge-runtime..pack.js gzip 844 B 844 B
Overall change 844 B 844 B
Next Runtimes
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
274-experime...dev.js gzip 322 B 322 B
274.runtime.dev.js gzip 314 B 314 B
app-page-exp...dev.js gzip 356 kB 356 kB
app-page-exp..prod.js gzip 129 kB 129 kB
app-page-tur..prod.js gzip 142 kB 142 kB
app-page-tur..prod.js gzip 137 kB 137 kB
app-page.run...dev.js gzip 346 kB 346 kB
app-page.run..prod.js gzip 125 kB 125 kB
app-route-ex...dev.js gzip 37.5 kB 37.5 kB
app-route-ex..prod.js gzip 25.5 kB 25.5 kB
app-route-tu..prod.js gzip 25.5 kB 25.5 kB
app-route-tu..prod.js gzip 25.3 kB 25.3 kB
app-route.ru...dev.js gzip 39.1 kB 39.1 kB
app-route.ru..prod.js gzip 25.3 kB 25.3 kB
pages-api-tu..prod.js gzip 9.69 kB 9.69 kB
pages-api.ru...dev.js gzip 11.6 kB 11.6 kB
pages-api.ru..prod.js gzip 9.68 kB 9.68 kB
pages-turbo...prod.js gzip 21.7 kB 21.7 kB
pages.runtim...dev.js gzip 27.5 kB 27.5 kB
pages.runtim..prod.js gzip 21.7 kB 21.7 kB
server.runti..prod.js gzip 916 kB 916 kB
Overall change 2.43 MB 2.43 MB
build cache Overall increase ⚠️
vercel/next.js canary vercel/next.js lubieowoce/shutdown-test-debug Change
0.pack gzip 2.08 MB 2.08 MB ⚠️ +2.15 kB
index.pack gzip 74.5 kB 74.2 kB N/A
Overall change 2.08 MB 2.08 MB ⚠️ +2.15 kB
Diff details
Diff for main-HASH.js

Diff too large to display

Commit: 9658791

@ijjk
Copy link
Member

ijjk commented Dec 18, 2024

Failing test suites

Commit: 9658791

__NEXT_EXPERIMENTAL_PPR=true pnpm test-start test/e2e/app-dir/app-root-params/generate-static-params.test.ts (PPR)

  • app-root-params - generateStaticParams > should be a cache hit for fully prerendered pages
Expand output

● app-root-params - generateStaticParams › should be a cache hit for fully prerendered pages

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

Expected: "HIT"
Received: "MISS"

  23 |     expect(
  24 |       response.headers.get(isNextDeploy ? 'x-vercel-cache' : 'x-nextjs-cache')
> 25 |     ).toBe('HIT')
     |       ^
  26 |   })
  27 |
  28 |   it("should be a cache miss for pages that aren't prerendered", async () => {

  at Object.toBe (e2e/app-dir/app-root-params/generate-static-params.test.ts:25:7)

Read more about building and testing Next.js in contributing.md.

@lubieowoce lubieowoce merged commit bfa75ed into canary Dec 18, 2024
131 checks passed
@lubieowoce lubieowoce deleted the lubieowoce/shutdown-test-debug branch December 18, 2024 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
created-by: Next.js team PRs by the Next.js team. tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants