*: Skipped tests review (#2430)
Delete tests for old versions of Go that are no longer run, remove skip from tests that seemingly work.
This commit is contained in:
parent
1ffe2413c2
commit
623667b0f4
@ -1,23 +1,23 @@
|
||||
Tests skipped by each supported backend:
|
||||
|
||||
* 386 skipped = 2.7% (4/149)
|
||||
* 386 skipped = 2.7% (4/147)
|
||||
* 1 broken
|
||||
* 3 broken - cgo stacktraces
|
||||
* arm64 skipped = 2.7% (4/149)
|
||||
* 2 broken
|
||||
* arm64 skipped = 2% (3/147)
|
||||
* 1 broken
|
||||
* 1 broken - cgo stacktraces
|
||||
* 1 broken - global variable symbolication
|
||||
* darwin/arm64 skipped = 0.67% (1/149)
|
||||
* darwin/arm64 skipped = 0.68% (1/147)
|
||||
* 1 broken - cgo stacktraces
|
||||
* darwin/lldb skipped = 0.67% (1/149)
|
||||
* darwin/lldb skipped = 0.68% (1/147)
|
||||
* 1 upstream issue
|
||||
* freebsd skipped = 8.1% (12/149)
|
||||
* freebsd skipped = 8.2% (12/147)
|
||||
* 11 broken
|
||||
* 1 not implemented
|
||||
* linux/386/pie skipped = 0.67% (1/149)
|
||||
* linux/386/pie skipped = 0.68% (1/147)
|
||||
* 1 broken
|
||||
* pie skipped = 0.67% (1/149)
|
||||
* pie skipped = 0.68% (1/147)
|
||||
* 1 upstream issue - https://github.com/golang/go/issues/29322
|
||||
* windows skipped = 1.3% (2/149)
|
||||
* windows skipped = 1.4% (2/147)
|
||||
* 1 broken
|
||||
* 1 upstream issue
|
||||
|
@ -3,7 +3,7 @@ set -e
|
||||
set -x
|
||||
|
||||
apt-get -qq update
|
||||
apt-get install -y dwz wget make git gcc curl jq
|
||||
apt-get install -y dwz wget make git gcc curl jq lsof
|
||||
dwz --version
|
||||
|
||||
version=$1
|
||||
|
@ -1310,23 +1310,9 @@ func TestFrameEvaluation(t *testing.T) {
|
||||
found[vval] = true
|
||||
}
|
||||
|
||||
firsterr := false
|
||||
if goversion.VersionAfterOrEqual(runtime.Version(), 1, 14) {
|
||||
// We try to make sure that all goroutines are stopped at a sensible place
|
||||
// before reading their stacktrace, but due to the nature of the test
|
||||
// program there is no guarantee that we always find them in a reasonable
|
||||
// state.
|
||||
// Asynchronous preemption in Go 1.14 exacerbates this problem, to avoid
|
||||
// unnecessary flakiness allow a single goroutine to be in a bad state.
|
||||
firsterr = true
|
||||
}
|
||||
for i := range found {
|
||||
if !found[i] {
|
||||
if firsterr {
|
||||
firsterr = false
|
||||
} else {
|
||||
t.Fatalf("Goroutine %d not found\n", i)
|
||||
}
|
||||
t.Fatalf("Goroutine %d not found\n", i)
|
||||
}
|
||||
}
|
||||
|
||||
@ -1734,24 +1720,6 @@ func TestStepIntoFunction(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestIssue384(t *testing.T) {
|
||||
// Crash related to reading uninitialized memory, introduced by the memory prefetching optimization
|
||||
|
||||
ver, _ := goversion.Parse(runtime.Version())
|
||||
if ver.Major < 0 || ver.AfterOrEqual(goversion.GoVersion{Major: 1, Minor: 10, Rev: -1}) {
|
||||
// go 1.10 emits DW_AT_decl_line and we won't be able to evaluate 'st'
|
||||
// which is declared after line 13.
|
||||
t.Skip("can not evaluate not-yet-declared variables with go 1.10")
|
||||
}
|
||||
|
||||
protest.AllowRecording(t)
|
||||
withTestProcess("issue384", t, func(p *proc.Target, fixture protest.Fixture) {
|
||||
setFileBreakpoint(p, t, fixture.Source, 13)
|
||||
assertNoError(p.Continue(), t, "Continue()")
|
||||
evalVariable(p, t, "st")
|
||||
})
|
||||
}
|
||||
|
||||
func TestIssue332_Part1(t *testing.T) {
|
||||
// Next shouldn't step inside a function call
|
||||
protest.AllowRecording(t)
|
||||
@ -1817,17 +1785,6 @@ func TestIssue332_Part2(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestIssue396(t *testing.T) {
|
||||
if goversion.VersionAfterOrEqual(runtime.Version(), 1, 13) {
|
||||
// CL 161337 in Go 1.13 and later removes the autogenerated init function
|
||||
// https://go-review.googlesource.com/c/go/+/161337
|
||||
t.Skip("no autogenerated init function in Go 1.13 or later")
|
||||
}
|
||||
withTestProcess("callme", t, func(p *proc.Target, fixture protest.Fixture) {
|
||||
findFunctionLocation(p, t, "main.init")
|
||||
})
|
||||
}
|
||||
|
||||
func TestIssue414(t *testing.T) {
|
||||
skipOn(t, "broken", "linux", "386", "pie") // test occasionally hangs on linux/386/pie
|
||||
// Stepping until the program exits
|
||||
@ -2824,9 +2781,6 @@ func TestAttachDetach(t *testing.T) {
|
||||
if testBackend == "rr" {
|
||||
return
|
||||
}
|
||||
if os.Getenv("CI") == "true" {
|
||||
t.Skip("disabled on Github actions")
|
||||
}
|
||||
var buildFlags protest.BuildFlags
|
||||
if buildMode == "pie" {
|
||||
buildFlags |= protest.BuildModePIE
|
||||
@ -3960,7 +3914,6 @@ func TestIssue951(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestDWZCompression(t *testing.T) {
|
||||
skipOn(t, "broken", "arm64")
|
||||
// If dwz is not available in the system, skip this test
|
||||
if _, err := exec.LookPath("dwz"); err != nil {
|
||||
t.Skip("dwz not installed")
|
||||
|
@ -254,9 +254,6 @@ func TestIssue354(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestIssue411(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
test.AllowRecording(t)
|
||||
withTestTerminal("math", t, func(term *FakeTerminal) {
|
||||
term.MustExec("break _fixtures/math.go:8")
|
||||
@ -270,9 +267,6 @@ func TestIssue411(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestTrace(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
test.AllowRecording(t)
|
||||
withTestTerminal("issue573", t, func(term *FakeTerminal) {
|
||||
term.MustExec("trace foo")
|
||||
@ -289,9 +283,6 @@ func TestTrace(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestTraceWithName(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
test.AllowRecording(t)
|
||||
withTestTerminal("issue573", t, func(term *FakeTerminal) {
|
||||
term.MustExec("trace foobar foo")
|
||||
@ -308,9 +299,6 @@ func TestTraceWithName(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestTraceOnNonFunctionEntry(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
test.AllowRecording(t)
|
||||
withTestTerminal("issue573", t, func(term *FakeTerminal) {
|
||||
term.MustExec("trace foobar issue573.go:19")
|
||||
@ -480,9 +468,6 @@ func TestScopePrefix(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestOnPrefix(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
if runtime.GOOS == "freebsd" {
|
||||
t.Skip("test is not valid on FreeBSD")
|
||||
}
|
||||
@ -539,9 +524,6 @@ func TestNoVars(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestOnPrefixLocals(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
if runtime.GOOS == "freebsd" {
|
||||
t.Skip("test is not valid on FreeBSD")
|
||||
}
|
||||
@ -600,9 +582,6 @@ func countOccurrences(s, needle string) int {
|
||||
}
|
||||
|
||||
func TestIssue387(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
if runtime.GOOS == "freebsd" {
|
||||
t.Skip("test is not valid on FreeBSD")
|
||||
}
|
||||
@ -875,25 +854,6 @@ func TestConfig(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestDisassembleAutogenerated(t *testing.T) {
|
||||
// Executing the 'disassemble' command on autogenerated code should work correctly
|
||||
|
||||
if goversion.VersionAfterOrEqual(runtime.Version(), 1, 13) {
|
||||
// CL 161337 in Go 1.13 and later removes the autogenerated init function
|
||||
// https://go-review.googlesource.com/c/go/+/161337
|
||||
t.Skip("no autogenerated init function in Go 1.13 or later")
|
||||
}
|
||||
|
||||
withTestTerminal("math", t, func(term *FakeTerminal) {
|
||||
term.MustExec("break main.init")
|
||||
term.MustExec("continue")
|
||||
out := term.MustExec("disassemble")
|
||||
if !strings.Contains(out, "TEXT main.init(SB) ") {
|
||||
t.Fatalf("output of disassemble wasn't for the main.init function %q", out)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
func TestIssue1090(t *testing.T) {
|
||||
// Exit while executing 'next' should report the "Process exited" error
|
||||
// message instead of crashing.
|
||||
@ -1000,9 +960,6 @@ func TestTruncateStacktrace(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestIssue1493(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("arm64 does not support FpRegs for now")
|
||||
}
|
||||
// The 'regs' command without the '-a' option should only return
|
||||
// general purpose registers.
|
||||
withTestTerminal("continuetestprog", t, func(term *FakeTerminal) {
|
||||
|
@ -2,15 +2,11 @@ package terminal
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"runtime"
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestStarlarkExamples(t *testing.T) {
|
||||
if runtime.GOARCH == "arm64" {
|
||||
t.Skip("test is not valid on ARM64")
|
||||
}
|
||||
withTestTerminal("testvariables2", t, func(term *FakeTerminal) {
|
||||
term.MustExec("continue")
|
||||
t.Run("goroutine_start_line", func(t *testing.T) { testStarlarkExampleGoroutineStartLine(t, term) })
|
||||
|
Loading…
Reference in New Issue
Block a user