Skip to content

Commit ffd22fb

Browse files
committed
arm64/arm64asm: avoid log.Fatal during test
Especially log.Fatal(err) where err came back from exec.Command.Run. It prints no additional information and is very confusing for the test to die printing 'exit status 1'. For golang/go#21486. Change-Id: I8675667838319a4d5697e596244bea514509894d Reviewed-on: https://go-review.googlesource.com/56971 Run-TryBot: Russ Cox <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-by: Cherry Zhang <[email protected]>
1 parent f185940 commit ffd22fb

File tree

2 files changed

+7
-15
lines changed

2 files changed

+7
-15
lines changed

arm64/arm64asm/ext_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -503,7 +503,7 @@ func JSONCases(t *testing.T) func(func([]byte)) {
503503
return func(try func([]byte)) {
504504
data, err := ioutil.ReadFile("inst.json")
505505
if err != nil {
506-
log.Fatal(err)
506+
t.Fatal(err)
507507
}
508508
var insts []InstJson
509509
var instsN []InstJson
@@ -513,7 +513,7 @@ func JSONCases(t *testing.T) func(func([]byte)) {
513513
N = 16
514514
}
515515
if err := json.Unmarshal(data, &insts); err != nil {
516-
log.Fatal(err)
516+
t.Fatal(err)
517517
}
518518
// Append instructions to get more test cases.
519519
for i := 0; i < N; {

arm64/arm64asm/objdumpext_test.go

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,27 +27,19 @@ func testObjdumpARM64(t *testing.T, generate func(func([]byte))) {
2727
}
2828

2929
func testObjdumpArch(t *testing.T, generate func(func([]byte)), arch Mode) {
30-
if _, err := os.Stat(objdumpPath); err != nil {
31-
t.Skip(err)
32-
}
33-
// Check objdump can disassemble elf64-aarch64.
34-
if test := objdumpinfo(); test == false {
35-
t.Skip("Skip the test if installed objdump doesn't support aarch64 elf format")
36-
}
30+
checkObjdumpAarch64(t)
3731
testExtDis(t, "gnu", arch, objdump, generate, allowedMismatchObjdump)
3832
testExtDis(t, "plan9", arch, objdump, generate, allowedMismatchObjdump)
3933
}
4034

41-
func objdumpinfo() bool {
42-
var i = []byte("aarch64")
35+
func checkObjdumpAarch64(t *testing.T) {
4336
out, err := exec.Command(objdumpPath, "-i").Output()
4437
if err != nil {
45-
log.Fatal(err)
38+
t.Skip("cannot run objdump: %v\n%s", err, out)
4639
}
47-
if bytes.Contains(out, i) {
48-
return true
40+
if !strings.Contains(string(out), "aarch64") {
41+
t.Skip("objdump does not have aarch64 support")
4942
}
50-
return false
5143
}
5244

5345
func objdump(ext *ExtDis) error {

0 commit comments

Comments
 (0)