@@ -78,6 +78,42 @@ func TestProjectEntitlements(t *testing.T) {
7878 require .NoError (t , err )
7979 require .ElementsMatch (t , p2 , got .NewBucketPlacements )
8080 require .Equal (t , m2 , got .PlacementProductMappings )
81+ require .Nil (t , got .ComputeAccessToken )
82+
83+ // Test compute access token functionality.
84+ token1 := []byte ("compute-token-123" )
85+ err = projects .SetComputeAccessTokenByPublicID (ctx , publicID , token1 )
86+ require .NoError (t , err )
87+
88+ got , err = projects .GetByPublicID (ctx , publicID )
89+ require .NoError (t , err )
90+ require .ElementsMatch (t , p2 , got .NewBucketPlacements )
91+ require .Equal (t , m2 , got .PlacementProductMappings )
92+ require .Equal (t , token1 , got .ComputeAccessToken )
93+
94+ // Test setting token to empty byte slice.
95+ err = projects .SetComputeAccessTokenByPublicID (ctx , publicID , []byte {})
96+ require .NoError (t , err )
97+
98+ got , err = projects .GetByPublicID (ctx , publicID )
99+ require .NoError (t , err )
100+ require .Nil (t , got .ComputeAccessToken )
101+
102+ // Test setting token to nil.
103+ token2 := []byte ("new-compute-token-456" )
104+ err = projects .SetComputeAccessTokenByPublicID (ctx , publicID , token2 )
105+ require .NoError (t , err )
106+
107+ got , err = projects .GetByPublicID (ctx , publicID )
108+ require .NoError (t , err )
109+ require .Equal (t , token2 , got .ComputeAccessToken )
110+
111+ err = projects .SetComputeAccessTokenByPublicID (ctx , publicID , nil )
112+ require .NoError (t , err )
113+
114+ got , err = projects .GetByPublicID (ctx , publicID )
115+ require .NoError (t , err )
116+ require .Nil (t , got .ComputeAccessToken )
81117
82118 err = projects .DeleteByPublicID (ctx , publicID )
83119 require .NoError (t , err )
0 commit comments