summaryrefslogtreecommitdiff
path: root/distance_test.go
blob: 50810fa713be2d08193283a845b725e8dedc95e0 (plain)
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
27
28
package lavenshtein

import "testing"

func TestDistance(t *testing.T) {
	testCases := []struct {
		a, b string
		dist int
	}{
		{"", "", 0},
		{"aa", "aa", 0},
		{"aa", "ab", 1},
		{"aa", "ba", 1},
		{"aa", "bb", 2},
		{"aa", "", 2},
		{"", "bb", 2},
		{"test", "Test", 1},
		{"тест", "Тест", 1},
	}
	for _, tc := range testCases {
		t.Run(tc.a+" "+tc.b, func(t *testing.T) {
			dist := Distance(tc.a, tc.b)
			if dist != tc.dist {
				t.Errorf("got %v, want %v", dist, tc.dist)
			}
		})
	}
}