mirror of https://github.com/golang/go.git
test: write Go wrapper code so that bug302 can be run by run.go
Issue #4139. Change-Id: I50d85a65b22c0cfb4d2a078cee45cf7adb23ba77 Reviewed-on: https://go-review.googlesource.com/1210 Reviewed-by: Russ Cox <rsc@golang.org> Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
This commit is contained in:
parent
2917ed40d0
commit
c5de72b213
|
|
@ -1,9 +1,41 @@
|
|||
// $G $D/bug302.dir/p.go && pack grc pp.a p.$A && $G $D/bug302.dir/main.go
|
||||
|
||||
// NOTE: This test is not run by 'run.go' and so not run by all.bash.
|
||||
// To run this test you must use the ./run shell script.
|
||||
// +build !nacl
|
||||
// run
|
||||
|
||||
// Copyright 2010 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"go/build"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
)
|
||||
|
||||
func main() {
|
||||
a, err := build.ArchChar(runtime.GOARCH)
|
||||
if err != nil {
|
||||
fmt.Println("BUG:", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
run("go", "tool", a+"g", filepath.Join("fixedbugs", "bug302.dir", "p.go"))
|
||||
run("go", "tool", "pack", "grc", "pp.a", "p."+a)
|
||||
run("go", "tool", a+"g", filepath.Join("fixedbugs", "bug302.dir", "main.go"))
|
||||
os.Remove("p."+a)
|
||||
os.Remove("pp.a")
|
||||
os.Remove("main."+a)
|
||||
}
|
||||
|
||||
func run(cmd string, args ...string) {
|
||||
out, err := exec.Command(cmd, args...).CombinedOutput()
|
||||
if err != nil {
|
||||
fmt.Println(string(out))
|
||||
fmt.Println(err)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -908,7 +908,6 @@ func (t *test) wantedErrors(file, short string) (errs []wantedError) {
|
|||
|
||||
var skipOkay = map[string]bool{
|
||||
"fixedbugs/bug248.go": true, // combines errorcheckdir and rundir in the same dir.
|
||||
"fixedbugs/bug302.go": true, // tests both .$O and .a imports.
|
||||
"fixedbugs/bug345.go": true, // needs the appropriate flags in gc invocation.
|
||||
"fixedbugs/bug369.go": true, // needs compiler flags.
|
||||
"fixedbugs/bug429.go": true, // like "run" but program should fail
|
||||
|
|
|
|||
Loading…
Reference in New Issue