mirror of
https://github.com/golang/go
synced 2024-11-26 05:07:59 -07:00
Revert "cmd/go, misc: rework cwd handling for iOS tests"
This reverts commit 593ea3b360
.
Replaced by a improved strategy later in the CL relation chain.
Change-Id: I6963e4d1bf38e7028cf545a953e28054d83548
Change-Id: I6963e4d1bf38e7028cf545a953e28054d8354870
Reviewed-on: https://go-review.googlesource.com/36067
Reviewed-by: David Crawshaw <crawshaw@golang.org>
This commit is contained in:
parent
2b780af08e
commit
3ce5371aaf
@ -212,11 +212,6 @@ func run(bin string, args []string) (err error) {
|
||||
var opts options
|
||||
opts, args = parseArgs(args)
|
||||
|
||||
// Pass the suffix for the current working directory as the
|
||||
// first argument to the test. For iOS, cmd/go generates
|
||||
// special handling of this argument.
|
||||
args = append([]string{"cwdSuffix=" + pkgpath}, args...)
|
||||
|
||||
// ios-deploy invokes lldb to give us a shell session with the app.
|
||||
s, err := newSession(appdir, args, opts)
|
||||
if err != nil {
|
||||
@ -254,6 +249,15 @@ func run(bin string, args []string) (err error) {
|
||||
|
||||
s.doCmd("run", "stop reason = signal SIGUSR2", 20*time.Second)
|
||||
|
||||
// Move the current working directory into the faux gopath.
|
||||
if pkgpath != "src" {
|
||||
s.do(`breakpoint delete 1`)
|
||||
s.do(`expr char* $mem = (char*)malloc(512)`)
|
||||
s.do(`expr $mem = (char*)getwd($mem, 512)`)
|
||||
s.do(`expr $mem = (char*)strcat($mem, "/` + pkgpath + `")`)
|
||||
s.do(`call (void)chdir($mem)`)
|
||||
}
|
||||
|
||||
startTestsLen := s.out.Len()
|
||||
fmt.Fprintln(s.in, `process continue`)
|
||||
|
||||
|
@ -1562,28 +1562,12 @@ func coverRegisterFile(fileName string, counter []uint32, pos []uint32, numStmts
|
||||
func main() {
|
||||
{{if .IsIOS}}
|
||||
// Send a SIGUSR2, which will be intercepted by LLDB to
|
||||
// tell the test harness that installation was successful.
|
||||
// See misc/ios/go_darwin_arm_exec.go.
|
||||
// tell the test harness that installation was successful,
|
||||
// and to give the exec script a chance set the current
|
||||
// working directory. See misc/ios/go_darwin_arm_exec.go.
|
||||
signal.Notify(make(chan os.Signal), syscall.SIGUSR2)
|
||||
syscall.Kill(0, syscall.SIGUSR2)
|
||||
signal.Reset(syscall.SIGUSR2)
|
||||
|
||||
// The first argument supplied to an iOS test is an offset
|
||||
// suffix for the current working directory.
|
||||
// Process it here, and remove it from os.Args.
|
||||
const hdr = "cwdSuffix="
|
||||
if len(os.Args) < 2 || len(os.Args[1]) <= len(hdr) || os.Args[1][:len(hdr)] != hdr {
|
||||
panic("iOS test not passed a working directory suffix")
|
||||
}
|
||||
suffix := os.Args[1][len(hdr):]
|
||||
dir, err := os.Getwd()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
if err := os.Chdir(dir + "/" + suffix); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
os.Args = append([]string{os.Args[0]}, os.Args[2:]...)
|
||||
{{end}}
|
||||
|
||||
{{if .CoverEnabled}}
|
||||
|
Loading…
Reference in New Issue
Block a user