aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/shedlang/compiler/backends/wasm/WasmTesting.java
blob: d437b56a759a4066ba3d10970a8ba74687f5750b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package org.shedlang.compiler.backends.wasm;

import org.pcollections.PVector;
import org.shedlang.compiler.backends.targets.WasmTarget;
import org.shedlang.compiler.filesystem.ShedCompilerFiles;
import org.shedlang.compiler.util.P;

import java.util.List;

public class WasmTesting {
    private WasmTesting() {
    }

    public static List<String> patioTestBinaryRunner(WasmTarget target) {
        return binaryRunner(target).plus("--patio-test").plus("--");
    }

    public static List<String> wasiBinaryRunner(WasmTarget target) {
        return binaryRunner(target).plus("--");
    }

    private static PVector<String> binaryRunner(WasmTarget target) {
        return P.vector(
            "node",
            "--experimental-wasi-unstable-preview1",
            "--no-warnings=ExperimentalWarning"
        ).plusAll(target.nodeFlags()).plus(
            ShedCompilerFiles.getRoot().resolve("run-wasm.js").toString()
        ).plusAll(target.runWasmFlags());
    }
}