mirror of
https://github.com/tailscale/tailscale.git
synced 2025-10-29 07:09:33 +00:00
26 lines
760 B
Go
26 lines
760 B
Go
|
|
// Copyright (c) Tailscale Inc & AUTHORS
|
||
|
|
// SPDX-License-Identifier: BSD-3-Clause
|
||
|
|
|
||
|
|
package main
|
||
|
|
|
||
|
|
import (
|
||
|
|
"os"
|
||
|
|
"os/exec"
|
||
|
|
"strings"
|
||
|
|
"testing"
|
||
|
|
)
|
||
|
|
|
||
|
|
func TestGocrossWrapper(t *testing.T) {
|
||
|
|
for i := range 2 { // once to build gocross; second to test it's cached
|
||
|
|
cmd := exec.Command("pwsh", "-NoProfile", "-ExecutionPolicy", "Bypass", ".\\gocross-wrapper.ps1", "version")
|
||
|
|
cmd.Env = append(os.Environ(), "CI=true", "NOPWSHDEBUG=false", "TS_USE_GOCROSS=1") // for Set-PSDebug verbosity
|
||
|
|
out, err := cmd.CombinedOutput()
|
||
|
|
if err != nil {
|
||
|
|
t.Fatalf("gocross-wrapper.ps1 failed: %v\n%s", err, out)
|
||
|
|
}
|
||
|
|
if i > 0 && !strings.Contains(string(out), "$gocrossOk = $true\r\n") {
|
||
|
|
t.Errorf("expected to find '$gocrossOk = $true'; got output:\n%s", out)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|