leebyron / testcheck-js

Generative testing for JavaScript

Home Page:http://leebyron.com/testcheck-js

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Help the AVA team deliver first-class support for TestCheck.js

novemberborn opened this issue Β· comments

Hello πŸ‘‹

Back in February @danr raised an issue with AVA on how to get first-class support for tools like TestCheck.js. We've reached a consensus on implementing a t.try() assertion for which the calling code can determine whether to accept the results:

// pseudo-code for ava-check:
function check(genA, genB, implementation) {
  return async t => {
    while (true) {
      const result = await t.try(implementation, genA(), genB())
      if (result.passed || cannotMinimizeFurther()) {
        return result.commit()
      }
    }
  }
}

AVA recently stopped exposing its internal Test instance which has broken ava-check: avajs/ava#1835. Ideally we implement t.try() so TestCheck.js no longer has to rely on internals, but we need somebody to do the work. So, here's your call to action! Chime in on avajs/ava#1692 if you want to help out.

Many thanks!