tile38/internal/controller/token_test.go

112 lines
2.4 KiB
Go

package controller
import (
"strings"
"testing"
)
func TestLowerCompare(t *testing.T) {
if !lc("hello", "hello") {
t.Fatal("failed")
}
if !lc("Hello", "hello") {
t.Fatal("failed")
}
if !lc("HeLLo World", "hello world") {
t.Fatal("failed")
}
if !lc("", "") {
t.Fatal("failed")
}
if lc("hello", "") {
t.Fatal("failed")
}
if lc("", "hello") {
t.Fatal("failed")
}
if lc("HeLLo World", "Hello world") {
t.Fatal("failed")
}
}
// func testParseFloat(t testing.TB, s string, f float64, invalid bool) {
// n, err := parseFloat(s)
// if err != nil {
// if invalid {
// return
// }
// t.Fatal(err)
// }
// if invalid {
// t.Fatalf("expecting an error for %s", s)
// }
// if n != f {
// t.Fatalf("for '%s', expect %f, got %f", s, f, n)
// }
// }
// func TestParseFloat(t *testing.T) {
// testParseFloat(t, "100", 100, false)
// testParseFloat(t, "0", 0, false)
// testParseFloat(t, "-1", -1, false)
// testParseFloat(t, "-0", -0, false)
// testParseFloat(t, "-100", -100, false)
// testParseFloat(t, "-0", -0, false)
// testParseFloat(t, "+1", 1, false)
// testParseFloat(t, "+0", 0, false)
// testParseFloat(t, "33.102938", 33.102938, false)
// testParseFloat(t, "-115.123123", -115.123123, false)
// testParseFloat(t, ".1", 0.1, false)
// testParseFloat(t, "0.1", 0.1, false)
// testParseFloat(t, "00.1", 0.1, false)
// testParseFloat(t, "01.1", 1.1, false)
// testParseFloat(t, "01", 1, false)
// testParseFloat(t, "-00.1", -0.1, false)
// testParseFloat(t, "+00.1", 0.1, false)
// testParseFloat(t, "", 0.1, true)
// testParseFloat(t, " 0", 0.1, true)
// testParseFloat(t, "0 ", 0.1, true)
// }
func BenchmarkLowerCompare(t *testing.B) {
for i := 0; i < t.N; i++ {
if !lc("HeLLo World", "hello world") {
t.Fatal("failed")
}
}
}
func BenchmarkStringsLowerCompare(t *testing.B) {
for i := 0; i < t.N; i++ {
if strings.ToLower("HeLLo World") != "hello world" {
t.Fatal("failed")
}
}
}
// func BenchmarkParseFloat(t *testing.B) {
// s := []string{"33.10293", "-115.1203102"}
// for i := 0; i < t.N; i++ {
// _, err := parseFloat(s[i%2])
// if err != nil {
// t.Fatal("failed")
// }
// }
// }
// func BenchmarkStrconvParseFloat(t *testing.B) {
// s := []string{"33.10293", "-115.1203102"}
// for i := 0; i < t.N; i++ {
// _, err := strconv.ParseFloat(s[i%2], 64)
// if err != nil {
// t.Fatal("failed")
// }
// }
// }