You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ntool/ncli/read_test.go

55 lines
978 B
Go

1 year ago
package ncli_test
import (
"git.noahlan.cn/noahlan/ntool/ncli"
"git.noahlan.cn/noahlan/ntool/ntest/assert"
"testing"
)
func TestReadFirst(t *testing.T) {
// testutil.RewriteStdout()
// _, err := os.Stdout.WriteString("haha")
// ans, err1 := ncli.ReadFirst("hi?")
// testutil.RestoreStdout()
// assert.NoError(t, err)
// assert.NoError(t, err1)
// assert.Equal(t, "haha", ans)
}
func TestInputIsYes(t *testing.T) {
tests := []struct {
in string
wnt bool
}{
{"y", true},
{"yes", true},
{"yES", true},
{"Y", true},
{"Yes", true},
{"YES", true},
{"h", false},
{"n", false},
{"no", false},
{"NO", false},
}
for _, test := range tests {
assert.Eq(t, test.wnt, ncli.InputIsYes(test.in))
}
}
func TestByteIsYes(t *testing.T) {
tests := []struct {
in byte
wnt bool
}{
{'y', true},
{'Y', true},
{'h', false},
{'n', false},
{'N', false},
}
for _, test := range tests {
assert.Eq(t, test.wnt, ncli.ByteIsYes(test.in))
}
}