! garble stderr 'Garble obfuscates Go code' stderr 'garble \[garble flags\] command' ! stderr 'usage: go build' ! stdout . ! garble -h stderr 'Garble obfuscates Go code' stderr 'garble \[garble flags\] command' ! stdout . ! garble help stderr 'Garble obfuscates Go code' stderr 'garble \[garble flags\] command' ! stdout . ! garble help foo bar stderr 'usage: garble help' ! stderr 'Garble obfuscates Go code' ! stdout . ! garble help -h stderr 'usage: garble help' ! stdout . ! garble build -h stderr 'garble \[garble flags\] build' stderr 'This command wraps "go build"' stderr 'usage: go build' stderr 'Run .go help build.' ! stderr 'Garble obfuscates Go code' ! stdout . ! garble test -h stderr 'garble \[garble flags\] test' stderr 'This command wraps "go test"' stderr 'usage: go test' stderr 'Run .go help test.' ! stderr 'Garble obfuscates Go code' ! stdout . ! garble reverse -h stderr 'garble \[garble flags\] reverse \[build flags\] package \[files\]' ! stderr 'usage: go ' ! stdout . ! garble help reverse stderr 'garble \[garble flags\] reverse \[build flags\] package \[files\]' ! stderr 'usage: go ' ! stdout . ! garble -badflag stderr 'flag provided but not defined' stderr 'garble \[garble flags\] command' ! stdout . ! garble badcmd stderr 'unknown command' ! garble build -badflag stderr 'usage: go build' # TODO: is this confusing? ! stdout . ! garble build -tiny stderr 'must precede command, like: garble -tiny build \./pkg' ! stdout . ! garble build -literals stderr 'must precede command, like: garble -literals build \./pkg' ! stdout . ! garble build -seed=random stderr 'must precede command, like: garble -seed=random build \./pkg' ! stdout . [!windows] ! garble /does/not/exist/compile [windows] ! garble C:\does\not\exist\compile stderr 'not running "garble \[command\]"' garble version stdout 'devel|^v0' ! garble version -flag stderr 'usage: garble version' ! garble version arg stderr 'usage: garble version' # We need a dummy module for "garble build -badflag". -- go.mod -- module dummy -- dummy.go -- package dummy