diff options
author | David Lazar <lazard@golang.org> | 2017-04-19 12:04:18 -0400 |
---|---|---|
committer | David Lazar <lazard@golang.org> | 2017-04-20 20:41:15 +0000 |
commit | da75700a641c7e2bd264dd873d637abfcbfffab1 (patch) | |
tree | 1ef0f26ddfc21fcc1facd8a9788e762dc90161d1 /src/runtime/crash_test.go | |
parent | 6f2e6f8dd6d2b0fc1b32447c4ed38231fde4a3c2 (diff) | |
download | go-da75700a641c7e2bd264dd873d637abfcbfffab1.tar.gz go-da75700a641c7e2bd264dd873d637abfcbfffab1.zip |
runtime: make test independent of inlining
TestBreakpoint expects to see "runtime.Breakpoint()" in the stack trace.
If runtime.Breakpoint() is inlined, then the stack trace prints
"runtime.Breakpoint(...)" since the runtime does not have information
about arguments (or lack thereof) to inlined functions. This change
makes the test independent of inlining by looking for the string
"runtime.Breakpoint(". Now TestBreakpoint passes with -l=4.
Change-Id: Ia044a8e8a4de2337cb2b393d6fa78c73a2f25926
Reviewed-on: https://go-review.googlesource.com/40997
Run-TryBot: David Lazar <lazard@golang.org>
Reviewed-by: Austin Clements <austin@google.com>
Diffstat (limited to 'src/runtime/crash_test.go')
-rw-r--r-- | src/runtime/crash_test.go | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/runtime/crash_test.go b/src/runtime/crash_test.go index 3f84935f4e..f6a0cd6cbb 100644 --- a/src/runtime/crash_test.go +++ b/src/runtime/crash_test.go @@ -308,7 +308,9 @@ func TestNoHelperGoroutines(t *testing.T) { func TestBreakpoint(t *testing.T) { output := runTestProg(t, "testprog", "Breakpoint") - want := "runtime.Breakpoint()" + // If runtime.Breakpoint() is inlined, then the stack trace prints + // "runtime.Breakpoint(...)" instead of "runtime.Breakpoint()". + want := "runtime.Breakpoint(" if !strings.Contains(output, want) { t.Fatalf("output:\n%s\n\nwant output containing: %s", output, want) } |