@Override
    public void run() {
        if (processor != null) {
            processor.execute();
        } else {
            if (!beforeHook()) {
                logger.info("before-feature hook returned [false], aborting: {}", this);
            } else {
                scenarios.forEachRemaining(this::processScenario);
            }
            afterFeature();
        }
    }
@Test
    void testCallOnceJsFromFeatureUtilsDefinedInKarateConfig() {
        System.setProperty("karate.env", "callonce");
        run("callonce-config.feature", "classpath:com/intuit/karate/core/");
        matchContains(fr.result.getVariables(), "{ foo: 'hello foo' }");
        System.clearProperty("karate.env");
    }