cmd/go sometimes returns relative path in the error message
(see shortPath function). Account for that during
TestFileLineInErrorMessages.
Fixes #11355
Change-Id: Ica79359eab48d669d307449fdd458764895fab2c
Reviewed-on: https://go-review.googlesource.com/11475
Reviewed-by: Russ Cox <rsc@golang.org>
tg.tempFile("err.go", `package main; import "bar"`)
path := tg.path("err.go")
tg.runFail("run", path)
- tg.grepStderr("^"+regexp.QuoteMeta(path)+":", "missing file:line in error message")
+ shortPath := path
+ if rel, err := filepath.Rel(tg.pwd(), path); err == nil && len(rel) < len(path) {
+ shortPath = rel
+ }
+ tg.grepStderr("^"+regexp.QuoteMeta(shortPath)+":", "missing file:line in error message")
}
func TestProgramNameInCrashMessages(t *testing.T) {