| # Verify that go bug creates the appropriate URL issue body |
| |
| [!linux] skip |
| [gccgo] skip |
| [short] skip |
| |
| go install |
| go build -o $TMPDIR/go ./go |
| env BROWSER=$GOPATH/bin/browser PATH=$TMPDIR:$PATH |
| go bug |
| exists $TMPDIR/browser |
| grep '^go version' $TMPDIR/browser |
| grep '^GOROOT/bin/go version: go version' $TMPDIR/browser |
| grep '^GOROOT/bin/go tool compile -V: compile version' $TMPDIR/browser |
| grep '^uname -sr: Linux' $TMPDIR/browser |
| |
| -- go.mod -- |
| module browser |
| |
| -- main.go -- |
| package main |
| |
| import ( |
| "fmt" |
| "net/url" |
| "os" |
| "path/filepath" |
| ) |
| |
| func main() { |
| u, err := url.Parse(os.Args[1]) |
| if err != nil { |
| panic(err) |
| } |
| body, err := url.PathUnescape(u.Query().Get("body")) |
| if err != nil { |
| panic(err) |
| } |
| out := filepath.Join(os.TempDir(), "browser") |
| f, err := os.Create(out) |
| if err != nil { |
| panic(err) |
| } |
| fmt.Fprintln(f, body) |
| if err := f.Close(); err != nil { |
| panic(err) |
| } |
| } |
| |
| -- go/main.go -- |
| package main |
| |
| import ( |
| "os" |
| ) |
| |
| func main() { |
| os.Exit(1) |
| } |