// Path: src/main/java/net/kimleo/rec/v2/scripting/Scripting.java
// public class Scripting {
//     public static void runfile(File file,
//                                String filename,
//                                boolean enableRetry,
//                                String retryFile) throws Exception {
//         Context ctx = Context.enter();
//         ctx.putThreadLocal("SCRIPT_PATH", file.getAbsoluteFile().getParent());
// 
//         ScriptableObject scope = ctx.initStandardObjects();
// 
//         NativeExecutionContext executionContext = initializeNativeExecutionContext(
//                 file,
//                 enableRetry,
//                 retryFile,
//                 ctx);
// 
//         scope.putConst("context", scope, javaToJS(executionContext, scope));
// 
//         ctx.setLanguageVersion(VERSION_1_8);
//         Require require = new RequireBuilder()
//                 .setModuleScriptProvider(new SoftCachingModuleScriptProvider(new NativeModuleSourceProvider()))
//                 .createRequire(ctx, scope);
//         require.install(scope);
//         require.requireMain(ctx, filename);
//     }
// 
//     private static NativeExecutionContext initializeNativeExecutionContext(File file,
//                                                                            boolean enableRetry,
//                                                                            String retryFile,
//                                                                            Context ctx) {
//         NativeExecutionContext executionContext = initialContext();
// 
//         executionContext.setScriptPath(file.getAbsoluteFile().getParent());
//         executionContext.setJsContext(ctx);
//         executionContext.setEnableRetry(enableRetry);
//         executionContext.setRetryFile(retryFile);
//         return executionContext;
//     }
// 
// }


import net.kimleo.rec.v2.scripting.Scripting;
import org.junit.Test;
import java.io.File;
package net.kimleo.rec.v2.model.impl;



public class ReactiveTeeTest {
    @Test
    public void test() throws Exception {
// Path: src/main/java/net/kimleo/rec/v2/scripting/Scripting.java
// public class Scripting {
//     public static void runfile(File file,
//                                String filename,
//                                boolean enableRetry,
//                                String retryFile) throws Exception {
//         Context ctx = Context.enter();
//         ctx.putThreadLocal("SCRIPT_PATH", file.getAbsoluteFile().getParent());
// 
//         ScriptableObject scope = ctx.initStandardObjects();
// 
//         NativeExecutionContext executionContext = initializeNativeExecutionContext(
//                 file,
//                 enableRetry,
//                 retryFile,
//                 ctx);
// 
//         scope.putConst("context", scope, javaToJS(executionContext, scope));
// 
//         ctx.setLanguageVersion(VERSION_1_8);
//         Require require = new RequireBuilder()
//                 .setModuleScriptProvider(new SoftCachingModuleScriptProvider(new NativeModuleSourceProvider()))
//                 .createRequire(ctx, scope);
//         require.install(scope);
//         require.requireMain(ctx, filename);
//     }
// 
//     private static NativeExecutionContext initializeNativeExecutionContext(File file,
//                                                                            boolean enableRetry,
//                                                                            String retryFile,
//                                                                            Context ctx) {
//         NativeExecutionContext executionContext = initialContext();
// 
//         executionContext.setScriptPath(file.getAbsoluteFile().getParent());
//         executionContext.setJsContext(ctx);
//         executionContext.setEnableRetry(enableRetry);
//         executionContext.setRetryFile(retryFile);
//         return executionContext;
//     }
// 
// }


// Path: src/test/java/net/kimleo/rec/v2/model/impl/ReactiveTeeTest.java
import net.kimleo.rec.v2.scripting.Scripting;
import org.junit.Test;
import java.io.File;

package net.kimleo.rec.v2.model.impl;



public class ReactiveTeeTest {
    @Test
    public void test() throws Exception {
        Scripting.runfile(new File("src/test/resources/reactive.js"), "reactive.js", false, "");