code: public boolean run() {
          boolean passed;
          ExecutionToken t = createExecutionToken();
          List<FeatureToken> features = getFeatureList(t);
          startTests(t, features);
          initializeInterpreter();
          processFeatures(t, features);
          endTests(t, features);
          passed = t.getEndState() == EndState.PASSED || t.getEndState() == EndState.PENDING;
          dispose();
          return passed;
      }
docs: Run interpreter using just the base configuration and the listeners provided
  @return true, if all tests passed or were marked pending