31 lines
951 B
Go
31 lines
951 B
Go
package router
|
|
|
|
import "testing"
|
|
|
|
// Russian capture must produce the same keys the loop's care rules read, or a
|
|
// ru voice test silently writes nothing and the nudges look broken.
|
|
func TestDefaultFactParserRU(t *testing.T) {
|
|
p := DefaultFactParser{}
|
|
cases := []struct {
|
|
utterance string
|
|
key string
|
|
ok bool
|
|
}{
|
|
{"выпил воды", "water", true},
|
|
{"попил воду", "water", true},
|
|
{"я поел", "meal", true},
|
|
{"пообедал", "meal", true},
|
|
{"принял душ", "shower", true},
|
|
{"сделал перерыв", "break", true},
|
|
{"немного отдохнул", "break", true},
|
|
{"поспал шесть часов", "sleep", true},
|
|
{"перезапусти nginx", "", false}, // an act, not a fact
|
|
}
|
|
for _, c := range cases {
|
|
k, _, ok := p.Parse(c.utterance)
|
|
if ok != c.ok || k != c.key {
|
|
t.Errorf("Parse(%q) = (%q, %v), want (%q, %v)", c.utterance, k, ok, c.key, c.ok)
|
|
}
|
|
}
|
|
}
|