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

Enable jest/no-try-expect #13124

Merged
merged 2 commits into from
May 20, 2020
Merged

Enable jest/no-try-expect #13124

merged 2 commits into from
May 20, 2020

Conversation

Timer
Copy link
Member

@Timer Timer commented May 20, 2020

This enables the jest/no-try-expect by default and updates the related code.

I've disabled it inline where it's safe to do so (usage of expect.assertions(1)), and migrated the other cases.

@Timer Timer added this to the 9.4.2 milestone May 20, 2020
@ijjk
Copy link
Member

ijjk commented May 20, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General
zeit/next.js canary Timer/next.js jest/no-try-expect Change
buildDuration 11.4s 11.2s -199ms
nodeModulesSize 61.8 MB 61.8 MB
Page Load Tests Overall increase ✓
zeit/next.js canary Timer/next.js jest/no-try-expect Change
/ failed reqs 0 0
/ total time (seconds) 2.02 1.971 -0.05
/ avg req/sec 1237.34 1268.32 ⚠️ +30.98
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.308 1.293 -0.02
/error-in-render avg req/sec 1911.64 1933.53 ⚠️ +21.89
Client Bundles (main, webpack, commons)
zeit/next.js canary Timer/next.js jest/no-try-expect Change
main-HASH.js gzip 6.65 kB 6.65 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..fef6.js gzip 10.5 kB 10.5 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 57 kB 57 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary Timer/next.js jest/no-try-expect Change
main-HASH.module.js gzip 5.69 kB 5.69 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.92 kB 6.92 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 52.5 kB 52.5 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary Timer/next.js jest/no-try-expect Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary Timer/next.js jest/no-try-expect Change
_app.js gzip 1.26 kB 1.26 kB
_error.js gzip 3.25 kB 3.25 kB
hooks.js gzip 881 B 881 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 8.22 kB 8.22 kB
Client Pages Modern
zeit/next.js canary Timer/next.js jest/no-try-expect Change
_app.module.js gzip 604 B 604 B
_error.module.js gzip 2.04 kB 2.04 kB
hooks.module.js gzip 383 B 383 B
index.module.js gzip 223 B 223 B
link.module.js gzip 1.52 kB 1.52 kB
routerDirect..dule.js gzip 281 B 281 B
withRouter.m..dule.js gzip 278 B 278 B
Overall change 5.33 kB 5.33 kB
Client Build Manifests
zeit/next.js canary Timer/next.js jest/no-try-expect Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Rendered Page Sizes
zeit/next.js canary Timer/next.js jest/no-try-expect Change
index.html gzip 928 B 928 B
link.html gzip 938 B 938 B
withRouter.html gzip 925 B 925 B
Overall change 2.79 kB 2.79 kB

Serverless Mode
General
zeit/next.js canary Timer/next.js jest/no-try-expect Change
buildDuration 12s 11.8s -263ms
nodeModulesSize 61.8 MB 61.8 MB
Client Bundles (main, webpack, commons)
zeit/next.js canary Timer/next.js jest/no-try-expect Change
main-HASH.js gzip 6.65 kB 6.65 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..fef6.js gzip 10.5 kB 10.5 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 57 kB 57 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary Timer/next.js jest/no-try-expect Change
main-HASH.module.js gzip 5.69 kB 5.69 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.92 kB 6.92 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 52.5 kB 52.5 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary Timer/next.js jest/no-try-expect Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary Timer/next.js jest/no-try-expect Change
_app.js gzip 1.26 kB 1.26 kB
_error.js gzip 3.25 kB 3.25 kB
hooks.js gzip 881 B 881 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 8.22 kB 8.22 kB
Client Pages Modern
zeit/next.js canary Timer/next.js jest/no-try-expect Change
_app.module.js gzip 604 B 604 B
_error.module.js gzip 2.04 kB 2.04 kB
hooks.module.js gzip 383 B 383 B
index.module.js gzip 223 B 223 B
link.module.js gzip 1.52 kB 1.52 kB
routerDirect..dule.js gzip 281 B 281 B
withRouter.m..dule.js gzip 278 B 278 B
Overall change 5.33 kB 5.33 kB
Client Build Manifests
zeit/next.js canary Timer/next.js jest/no-try-expect Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Serverless bundles
zeit/next.js canary Timer/next.js jest/no-try-expect Change
_error.js 844 kB 844 kB
404.html 4.18 kB 4.18 kB
hooks.html 3.81 kB 3.81 kB
index.js 844 kB 844 kB
link.js 882 kB 882 kB
routerDirect.js 874 kB 874 kB
withRouter.js 874 kB 874 kB
Overall change 4.33 MB 4.33 MB

@Janpot
Copy link
Contributor

Janpot commented May 20, 2020

FWIW, in case you didn't see this: jestjs/jest#3601 (comment) the pattern they propose for async code is:

await expect(requirePage('/non-existent', distDir)).rejects.toThrow('ENOENT')

But that would fail on synchronously thrown errors, I guess.

@timneutkens timneutkens merged commit ccea1c0 into vercel:canary May 20, 2020
@Timer Timer deleted the jest/no-try-expect branch May 20, 2020 12:09
chibicode pushed a commit to chibicode/next.js that referenced this pull request May 21, 2020
chibicode added a commit to chibicode/next.js that referenced this pull request May 21, 2020
* upstream/canary: (143 commits)
  Remove old ErrorComponent global
  Remove unnecessary loadGetInitialProps (vercel#13159)
  Remove dead events (vercel#13156)
  v9.4.2
  v9.4.2-canary.5
  Record presence of `reportWebVitals` (vercel#13155)
  Feat/remove redundant imports from examples (vercel#13062)
  Fix Windows LogBox Test (vercel#13147)
  Eliminate array destructuring assignment (vercel#13151)
  Update Create Next App to handle rename of org (vercel#13138)
  v9.4.2-canary.4
  Correctly eliminate destructuring assignment (vercel#13144)
  Fix the link for Custom Server documentation (vercel#13137)
  Upgrade Next Redux Wrapper to version 6 in examples (vercel#11802)
  Enable jest/no-try-expect (vercel#13124)
  GranularChunks conformance check (vercel#11710)
  With stitches (vercel#12677)
  chore: Remove some redundant imports (vercel#13066)
  Use `eval-source-map` for Server Side Errors (vercel#13123)
  [Examples] Fix with-yarn-workspaces Vercel deploy button (vercel#12867)
  ...
rokinsky pushed a commit to rokinsky/next.js that referenced this pull request Jul 11, 2020
@vercel vercel locked as resolved and limited conversation to collaborators Jan 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants