TestFactory.js 631 B

123456789101112131415161718192021222324252627
  1. module.exports = class TestFactory {
  2. static cartesian (
  3. name,
  4. coverageModel,
  5. { each, init }
  6. ) {
  7. const do_ = async t => {
  8. const states = coverageModel.states;
  9. if ( init ) await init(t);
  10. for ( let i=0 ; i < states.length ; i++ ) {
  11. const state = states[i];
  12. await t.case(`case ${i}`, async () => {
  13. console.log('state', state);
  14. await each(t, state, i);
  15. })
  16. }
  17. };
  18. return {
  19. name,
  20. do: do_,
  21. };
  22. }
  23. }