github.com/tetratelabs/wazero@v1.2.1/internal/gojs/testdata/main.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"os"
     6  
     7  	"github.com/tetratelabs/wazero/internal/gojs/testdata/argsenv"
     8  	"github.com/tetratelabs/wazero/internal/gojs/testdata/crypto"
     9  	"github.com/tetratelabs/wazero/internal/gojs/testdata/fs"
    10  	"github.com/tetratelabs/wazero/internal/gojs/testdata/gc"
    11  	"github.com/tetratelabs/wazero/internal/gojs/testdata/goroutine"
    12  	"github.com/tetratelabs/wazero/internal/gojs/testdata/http"
    13  	"github.com/tetratelabs/wazero/internal/gojs/testdata/mem"
    14  	"github.com/tetratelabs/wazero/internal/gojs/testdata/process"
    15  	"github.com/tetratelabs/wazero/internal/gojs/testdata/stdio"
    16  	"github.com/tetratelabs/wazero/internal/gojs/testdata/testfs"
    17  	"github.com/tetratelabs/wazero/internal/gojs/testdata/time"
    18  	"github.com/tetratelabs/wazero/internal/gojs/testdata/writefs"
    19  )
    20  
    21  // main includes a registry of all tests to reduce compilation time.
    22  func main() {
    23  	switch os.Args[1] {
    24  	case "argsenv":
    25  		argsenv.Main()
    26  	case "crypto":
    27  		crypto.Main()
    28  	case "exit":
    29  		os.Exit(255)
    30  	case "fs":
    31  		fs.Main()
    32  	case "gc":
    33  		gc.Main()
    34  	case "http":
    35  		http.Main()
    36  	case "goroutine":
    37  		goroutine.Main()
    38  	case "mem":
    39  		mem.Main()
    40  	case "process":
    41  		process.Main()
    42  	case "stdio":
    43  		stdio.Main()
    44  	case "testfs":
    45  		testfs.Main()
    46  	case "time":
    47  		time.Main()
    48  	case "writefs":
    49  		writefs.Main()
    50  	default:
    51  		panic(fmt.Errorf("unsupported arg: %s", os.Args[1]))
    52  	}
    53  }