memberset_test.gno

1.31 Kb ยท 43 lines
 1package commondao
 2
 3import (
 4	"testing"
 5
 6	"gno.land/p/nt/uassert"
 7)
 8
 9func TestMemberSetSize(t *testing.T) {
10	storage := NewMemberStorage()
11	members := NewMemberSet(storage)
12	uassert.Equal(t, 0, members.Size(), "expect size 0")
13
14	storage.Add("g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5")
15	members = NewMemberSet(storage)
16	uassert.Equal(t, 1, members.Size(), "expect size 1")
17
18	storage.Add("g1w4ek2u33ta047h6lta047h6lta047h6ldvdwpn")
19	members = NewMemberSet(storage)
20	uassert.Equal(t, 2, members.Size(), "expect size 2")
21}
22
23func TestMemberSetHas(t *testing.T) {
24	storage := NewMemberStorage()
25	storage.Add("g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5")
26
27	members := NewMemberSet(storage)
28
29	uassert.True(t, members.Has("g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5"), "expect member is found")
30	uassert.False(t, members.Has("g1w4ek2u33ta047h6lta047h6lta047h6ldvdwpn"), "expect member is not found")
31}
32
33func TestMemberSetIterateByOffset(t *testing.T) {
34	storage := NewMemberStorage()
35	storage.Add("g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5")
36	storage.Add("g1w4ek2u33ta047h6lta047h6lta047h6ldvdwpn")
37	storage.Add("g1w4ek2u3jta047h6lta047h6lta047h6l9huexc")
38
39	NewMemberSet(storage).IterateByOffset(1, 1, func(addr address) bool {
40		uassert.Equal(t, "g1w4ek2u33ta047h6lta047h6lta047h6ldvdwpn", addr.String(), "expect address to match")
41		return true
42	})
43}