1
0
mirror of https://github.com/golang/go synced 2024-11-19 21:14:43 -07:00

cmd/addr2line: simplify windows test

Change-Id: I0fcc35f43bc6059e6203af6134319cfc060c4b9a
Reviewed-on: https://go-review.googlesource.com/11085
Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
Russ Cox 2015-06-15 14:25:13 -04:00
parent 08e25fc1ba
commit 1fc114c797

View File

@ -52,15 +52,9 @@ func runAddr2Line(t *testing.T, exepath, addr string) (funcname, path, lineno st
funcname = f[0]
pathAndLineNo := f[1]
f = strings.Split(pathAndLineNo, ":")
if runtime.GOOS == "windows" {
switch len(f) {
case 2:
return funcname, f[0], f[1]
case 3:
return funcname, f[0] + ":" + f[1], f[2]
default:
t.Fatalf("no line number found in %q", pathAndLineNo)
}
if runtime.GOOS == "windows" && len(f) == 3 {
// Reattach drive letter.
f = []string{f[0] + ":" + f[1], f[2]}
}
if len(f) != 2 {
t.Fatalf("no line number found in %q", pathAndLineNo)
@ -86,12 +80,12 @@ func testAddr2Line(t *testing.T, exepath, addr string) {
if !os.SameFile(fi1, fi2) {
t.Fatalf("addr2line_test.go and %s are not same file", srcPath)
}
if srcLineNo != "95" {
t.Fatalf("line number = %v; want 95", srcLineNo)
if srcLineNo != "89" {
t.Fatalf("line number = %v; want 89", srcLineNo)
}
}
// This is line 94. The test depends on that.
// This is line 88. The test depends on that.
func TestAddr2Line(t *testing.T) {
testenv.MustHaveGoBuild(t)