This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
package langext
|
||||
|
||||
import (
|
||||
"git.blackforestbytes.com/BlackForestBytes/goext/tst"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestIterSingleValueSeq(t *testing.T) {
|
||||
seq := IterSingleValueSeq(42)
|
||||
|
||||
count := 0
|
||||
var got int
|
||||
for v := range seq {
|
||||
got = v
|
||||
count++
|
||||
}
|
||||
|
||||
tst.AssertEqual(t, count, 1)
|
||||
tst.AssertEqual(t, got, 42)
|
||||
}
|
||||
|
||||
func TestIterSingleValueSeqString(t *testing.T) {
|
||||
seq := IterSingleValueSeq("hello")
|
||||
|
||||
values := make([]string, 0)
|
||||
for v := range seq {
|
||||
values = append(values, v)
|
||||
}
|
||||
|
||||
tst.AssertEqual(t, len(values), 1)
|
||||
tst.AssertEqual(t, values[0], "hello")
|
||||
}
|
||||
|
||||
func TestIterSingleValueSeq2(t *testing.T) {
|
||||
seq := IterSingleValueSeq2("key", 42)
|
||||
|
||||
count := 0
|
||||
var k string
|
||||
var v int
|
||||
for kk, vv := range seq {
|
||||
k = kk
|
||||
v = vv
|
||||
count++
|
||||
}
|
||||
|
||||
tst.AssertEqual(t, count, 1)
|
||||
tst.AssertEqual(t, k, "key")
|
||||
tst.AssertEqual(t, v, 42)
|
||||
}
|
||||
|
||||
func TestIterSingleValueSeqEarlyBreak(t *testing.T) {
|
||||
seq := IterSingleValueSeq(1)
|
||||
|
||||
count := 0
|
||||
for range seq {
|
||||
count++
|
||||
break
|
||||
}
|
||||
|
||||
tst.AssertEqual(t, count, 1)
|
||||
}
|
||||
Reference in New Issue
Block a user