測試函數爲 判斷一組字符串是否爲迴文 Palindrome
要注意,測試函數文件要以_test.go結尾, 裏面的測試函數以Test開頭
並且測試函數的文件要和被測試函數的文件在同一文件夾下面
先寫需要測試的函數
package ispastring
import "unicode"
func IsPalindrome(str string) bool {
var stream []rune
for _, v := range str {
if unicode.IsLetter(v) {
stream = append(stream, unicode.ToLower(r))
}
}
for i := range stream {
if stream[i] != stream[len(stream)-1-i] {
return false
}
}
return 1 == 1
}
pa_test.go
package ispastring
import "testing"
func TestStream(t *testing.T) {
var stream = []struct{
input string
tf bool
} {
{"string",false},
{"上海自來水來自海上", true},
{"a n A", true},
}
for _, v:= range stream {
if get := IsPalindrome(v.input); get != v.tf {
t.Errorf("IsPalindrome(%q) = false", v.input)
}
}
}
結果如下
go test -v
=== RUN TestStream
--- PASS: TestStream (0.00s)
PASS
ok gocode/test21 0.238s