@@ -32,6 +32,9 @@ func TestGrants(t *testing.T) {
32
32
clone := grants .Clone ()
33
33
require .NotSame (t , grants , clone )
34
34
require .Same (t , grants .Video , clone .Video )
35
+ require .Same (t , grants .Agent , clone .Agent )
36
+ require .Same (t , grants .Inference , clone .Inference )
37
+ require .Same (t , grants .SIP , clone .SIP )
35
38
require .True (t , reflect .DeepEqual (grants , clone ))
36
39
require .True (t , reflect .DeepEqual (grants .Video , clone .Video ))
37
40
})
@@ -48,6 +51,16 @@ func TestGrants(t *testing.T) {
48
51
require .Same (t , grants .Video , clone .Video )
49
52
require .True (t , reflect .DeepEqual (grants , clone ))
50
53
require .True (t , reflect .DeepEqual (grants .Video , clone .Video ))
54
+
55
+ // require SIP
56
+ require .Same (t , grants .SIP , clone .SIP )
57
+ require .True (t , reflect .DeepEqual (grants .SIP , clone .SIP ))
58
+ // require Agent
59
+ require .Same (t , grants .Agent , clone .Agent )
60
+ require .True (t , reflect .DeepEqual (grants .Agent , clone .Agent ))
61
+ // require Inference
62
+ require .Same (t , grants .Inference , clone .Inference )
63
+ require .True (t , reflect .DeepEqual (grants .Inference , clone .Inference ))
51
64
})
52
65
53
66
t .Run ("clone with video" , func (t * testing.T ) {
@@ -84,6 +97,66 @@ func TestGrants(t *testing.T) {
84
97
require .True (t , reflect .DeepEqual (grants , clone ))
85
98
require .True (t , reflect .DeepEqual (grants .Video , clone .Video ))
86
99
})
100
+
101
+ t .Run ("clone with SIP" , func (t * testing.T ) {
102
+ sip := & SIPGrant {
103
+ Admin : true ,
104
+ }
105
+ grants := & ClaimGrants {
106
+ Identity : "identity" ,
107
+ Name : "name" ,
108
+ Kind : "kind" ,
109
+ SIP : sip ,
110
+ Sha256 : "sha256" ,
111
+ Metadata : "metadata" ,
112
+ }
113
+ clone := grants .Clone ()
114
+ require .NotSame (t , grants , clone )
115
+ require .NotSame (t , grants .SIP , clone .SIP )
116
+ require .Equal (t , grants .SIP .Admin , clone .SIP .Admin )
117
+ require .True (t , reflect .DeepEqual (grants , clone ))
118
+ require .True (t , reflect .DeepEqual (grants .SIP , clone .SIP ))
119
+ })
120
+
121
+ t .Run ("clone with Agent" , func (t * testing.T ) {
122
+ agent := & AgentGrant {
123
+ Admin : true ,
124
+ }
125
+ grants := & ClaimGrants {
126
+ Identity : "identity" ,
127
+ Name : "name" ,
128
+ Kind : "kind" ,
129
+ Agent : agent ,
130
+ Sha256 : "sha256" ,
131
+ Metadata : "metadata" ,
132
+ }
133
+ clone := grants .Clone ()
134
+ require .NotSame (t , grants , clone )
135
+ require .NotSame (t , grants .Agent , clone .Agent )
136
+ require .Equal (t , grants .Agent .Admin , clone .Agent .Admin )
137
+ require .True (t , reflect .DeepEqual (grants , clone ))
138
+ require .True (t , reflect .DeepEqual (grants .Agent , clone .Agent ))
139
+ })
140
+
141
+ t .Run ("clone with Inference" , func (t * testing.T ) {
142
+ inference := & InferenceGrant {
143
+ Perform : true ,
144
+ }
145
+ grants := & ClaimGrants {
146
+ Identity : "identity" ,
147
+ Name : "name" ,
148
+ Kind : "kind" ,
149
+ Inference : inference ,
150
+ Sha256 : "sha256" ,
151
+ Metadata : "metadata" ,
152
+ }
153
+ clone := grants .Clone ()
154
+ require .NotSame (t , grants , clone )
155
+ require .NotSame (t , grants .Inference , clone .Inference )
156
+ require .Equal (t , grants .Inference .Perform , clone .Inference .Perform )
157
+ require .True (t , reflect .DeepEqual (grants , clone ))
158
+ require .True (t , reflect .DeepEqual (grants .Inference , clone .Inference ))
159
+ })
87
160
}
88
161
89
162
func TestParticipantKind (t * testing.T ) {
0 commit comments