MCPcopy Create free account
hub / github.com/Permify/permify / TestTupleCollection

Function TestTupleCollection

pkg/database/collections_test.go:12–43  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

10)
11
12func TestTupleCollection(t *testing.T) {
13 // Create a new TupleCollection with two tuples
14 tuple1 := &base.Tuple{
15 Subject: &base.Subject{Type: "user", Id: "u1"},
16 Entity: &base.Entity{Type: "book", Id: "b1"},
17 }
18 tuple2 := &base.Tuple{
19 Subject: &base.Subject{Type: "user", Id: "u2"},
20 Entity: &base.Entity{Type: "book", Id: "b2"},
21 }
22 tupleColl := NewTupleCollection(tuple1, tuple2)
23
24 // Test the CreateTupleIterator method
25 iter := tupleColl.CreateTupleIterator()
26 assert.NotNil(t, iter)
27
28 // Test the GetTuples method
29 tuples := tupleColl.GetTuples()
30 assert.Equal(t, 2, len(tuples))
31 assert.Equal(t, tuple1, tuples[0])
32 assert.Equal(t, tuple2, tuples[1])
33
34 // Test the Add method
35 tuple3 := &base.Tuple{
36 Subject: &base.Subject{Type: "user", Id: "u3"},
37 Entity: &base.Entity{Type: "book", Id: "b3"},
38 }
39 tupleColl.Add(tuple3)
40 tuples = tupleColl.GetTuples()
41 assert.Equal(t, 3, len(tuples))
42 assert.Equal(t, tuple3, tuples[2])
43}
44
45func TestSubjectCollection(t *testing.T) {
46 // Create a new SubjectCollection with two subjects

Callers

nothing calls this directly

Calls 4

CreateTupleIteratorMethod · 0.95
GetTuplesMethod · 0.95
AddMethod · 0.95
NewTupleCollectionFunction · 0.85

Tested by

no test coverage detected