1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
package tests
import (
"fmt"
"github.com/xrash/smetrics"
"testing"
)
func TestUkkonen(t *testing.T) {
cases := []levenshteincase{
{"RASH", "RASH", 1, 1, 2, 0},
{"POTATO", "POTTATO", 1, 1, 2, 1},
{"POTTATO", "POTATO", 1, 1, 2, 1},
{"HOUSE", "MOUSE", 1, 1, 2, 2},
{"MOUSE", "HOUSE", 2, 2, 4, 4},
{"abc", "xy", 2, 3, 5, 13},
{"xy", "abc", 2, 3, 5, 12},
}
for _, c := range cases {
if r := smetrics.Ukkonen(c.s, c.t, c.icost, c.dcost, c.scost); r != c.r {
fmt.Println(r, "instead of", c.r)
t.Fail()
}
}
}
|