Skip to content
Snippets Groups Projects
Select Git revision
  • main default protected
1 result

failFast.js

Blame
  • failFast.js 600 B
    import jestEnvironmentNode from 'jest-environment-node';
    
    export default class FailFastEnvironment extends jestEnvironmentNode.default {
      constructor(...rest) {
        super(...rest);
        this.failed = false;
      }
    
      async handleTestEvent(event, state) {
        switch (event.name) {
        case 'hook_failure':
        case 'test_fn_failure':
          this.failed = true;
          break;
        case 'test_start':
          if (this.failed) {
            event.test.mode = 'skip';
          }
          break;
        default:
        }
        if (super.handleTestEvent !== undefined) {
          await super.handleTestEvent(event, state);
        }
      }
    }