mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-12 01:21:38 +08:00
update book code
This commit is contained in:
40
eBook/exercises/chapter_13/string_reverse_test.go
Executable file
40
eBook/exercises/chapter_13/string_reverse_test.go
Executable file
@@ -0,0 +1,40 @@
|
||||
// string_reverse_test.go
|
||||
package strev
|
||||
|
||||
import "testing"
|
||||
import "./strev"
|
||||
|
||||
type ReverseTest struct {
|
||||
in, out string
|
||||
}
|
||||
|
||||
var ReverseTests = []ReverseTest {
|
||||
ReverseTest{"ABCD", "DCBA"},
|
||||
ReverseTest{"CVO-AZ", "ZA-OVC"},
|
||||
ReverseTest{"Hello 世界", "界世 olleH"},
|
||||
}
|
||||
|
||||
func TestReverse(t *testing.T) {
|
||||
/*
|
||||
in := "CVO-AZ"
|
||||
out := Reverse(in)
|
||||
exp := "ZA-OVC"
|
||||
if out != exp {
|
||||
t.Errorf("Reverse of %s expects %s, but got %s", in, exp, out)
|
||||
}
|
||||
*/
|
||||
// testing with a battery of testdata:
|
||||
for _, r := range ReverseTests {
|
||||
exp := strev.Reverse(r.in)
|
||||
if r.out != exp {
|
||||
t.Errorf("Reverse of %s expects %s, but got %s", r.in, exp, r.out)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkReverse(b *testing.B) {
|
||||
s := "ABCD"
|
||||
for i:=0; i < b.N; i++ {
|
||||
strev.Reverse(s)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user