46 lines
776 B
Go
46 lines
776 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
"path/filepath"
|
|
"strings"
|
|
|
|
"apigo.cc/gojs"
|
|
"apigo.cc/gojs/client"
|
|
"github.com/ssgo/u"
|
|
)
|
|
|
|
func main() {
|
|
gojs.ExportForDev()
|
|
testOK := false
|
|
client.Bind("setTestOK", func(testIsOK bool) {
|
|
testOK = testIsOK
|
|
})
|
|
|
|
scriptFile := "client.js"
|
|
if len(os.Args) > 1 {
|
|
scriptFile = os.Args[1]
|
|
}
|
|
|
|
exePath, _ := os.Executable()
|
|
appDir := ""
|
|
if strings.Contains(exePath, "Contents/MacOS") {
|
|
appDir = filepath.Join(filepath.Dir(filepath.Dir(exePath)), "Resources")
|
|
os.Chdir(appDir)
|
|
}
|
|
u.WriteFile("/tmp/aaa.txt", appDir)
|
|
|
|
r, err := gojs.RunFile(scriptFile)
|
|
if err != nil {
|
|
fmt.Println(u.Red(err.Error()))
|
|
}
|
|
gojs.WaitAll()
|
|
|
|
if !testOK {
|
|
fmt.Println(u.BRed("test failed"))
|
|
} else {
|
|
fmt.Println(u.BGreen("test OK"), r)
|
|
}
|
|
}
|