Skip to content
This repository has been archived by the owner on Feb 24, 2020. It is now read-only.

Update ava to the latest version 馃殌 #68

Merged
merged 2 commits into from
Feb 23, 2020
Merged

Conversation

greenkeeper[bot]
Copy link
Contributor

@greenkeeper greenkeeper bot commented Feb 23, 2020

The devDependency ava was updated from 2.2.0 to 3.4.0.

This version is not covered by your current version range.

If you don鈥檛 accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.


Publisher: novemberborn
License: MIT

Release Notes for 3.4.0

Introducing the t.try() assertion

The new t.try() allows you to try assertions without causing the test to fail:

test('do the thing', async t => {
  const attempt = () => t.try(tt => {
    const result = await getResult()
    // getResult() can be flaky and sometimes throws :(
    tt.is(result, 'expected')
  })

const firstAttempt = await attempt()
if (firstAttempt.passed) return firstAttempt.commit()

t.log('Retrying (just once)')
firstAttempt.discard()
const secondAttempt = await attempt()
secondAttempt.commit()
})

You can use any test implementation with t.try(), including (arrays of) macros. You can decide what to do with attempts. You can even run attempts concurrently, so long as they don't use snapshot assertions.

This is great building block for handling all kinds of advanced test scenarios. We can't wait to see what you'll do with it! Find out more in the assertion documentation.

This feature was previously behind an experimental flag. That flag has now been removed. If you have enabled the flag you'll have to update your AVA config. Also note that as of this release, attempt titles are always prefixed with the title of the parent test 7ee3a0e.

Once again, thank you @qlonik for contributing this new assertion.

Other changes

  • The t.throws() and t.throwsAsync() assertions can now be called with undefined as the second argument. Previously, if you wanted to set an assertion message but did not want to provide any expectations for the thrown error you had to pass null. That's still allowed, of course. d0e2161 @stavalfi
  • ava.config.js files once again work with our @ava/typescript package f4d4edd
  • Our TypeScript definition no longer references @types/node 7a1dacf
  • We've improved the error message shown when test.cb() is used with asynchronous functions or observables f5a8c2b @toddkcarlson
  • The Vue recipe has been updated to use jsdom-global instead of browser-env 3f9c616 @Scrum
  • @fisker optimized how we detect ESM support 8831f54

See v3.3.0...v3.4.0 for all changes.

Commits

The new version differs by 133 commits.

  • 8630636 3.4.0
  • 12ba7bc Ship t.try() without requiring opt-in
  • f4d4edd Evaluate ava.config.js scripts in current context
  • 8831f54 Improve detection of ESM support
  • d0e2161 Support undefined as second argument to t.throws and t.throwsAsync
  • 324e45f Document t.try() (#2251)
  • da52e5f Bump dependencies
  • 55a3649 Ensure t.try() assigns unique titles when multiple implementations are passed
  • 7ee3a0e Prefix attempt titles with that of parent test
  • a69e4f2 Bump dependencies
  • 7a1dacf Remove @types/node reference
  • 3f9c616 Update Vue recipe to use JSDom rather than browser-env
  • f5a8c2b Improve error message when test.cb() is used with promises
  • c166e05 3.3.0
  • 362b6f9 Upgrade @ava/babel

There are 133 commits in total.

See the full diff


FAQ and help

There is a collection of frequently asked questions. If those don鈥檛 help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper bot 馃尨

@dmitriz dmitriz merged commit 8c78016 into master Feb 23, 2020
@greenkeeper greenkeeper bot deleted the greenkeeper/ava-3.4.0 branch February 23, 2020 16:31
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant