public void ListBuckets() { CreateBucketSample createBucketSample = new CreateBucketSample(); ListBucketsSample listBucketsSample = new ListBucketsSample(); var bucketName = Guid.NewGuid().ToString(); _fixture.CreateBucket(bucketName); var buckets = listBucketsSample.ListBuckets(_fixture.ProjectId); Assert.Contains(buckets, c => c.Name == bucketName); }
public void MakeBucketPublic() { MakeBucketPublicSample makeBucketPublicSample = new MakeBucketPublicSample(); var storage = StorageClient.Create(); var bucketName = Guid.NewGuid().ToString(); _fixture.CreateBucket(bucketName); makeBucketPublicSample.MakeBucketPublic(bucketName); Assert.Contains(storage.GetBucketIamPolicy(bucketName).Bindings, binding => binding.Role == "roles/storage.objectViewer" && binding.Members.Contains("allUsers")); }
public void LockRetentionPolicy() { SetRetentionPolicySample setRetentionPolicySample = new SetRetentionPolicySample(); LockRetentionPolicySample lockRetentionPolicySample = new LockRetentionPolicySample(); var bucketName = Guid.NewGuid().ToString(); _fixture.CreateBucket(bucketName); setRetentionPolicySample.SetRetentionPolicy(bucketName, 10); var result = lockRetentionPolicySample.LockRetentionPolicy(bucketName); Assert.True(result); }
public void TestSetPublicAccessPreventionEnforced() { SetPublicAccessPreventionEnforcedSample setPublicAccessPreventionEnforcedSample = new SetPublicAccessPreventionEnforcedSample(); var bucketName = Guid.NewGuid().ToString(); // Create bucket _fixture.CreateBucket(bucketName); // Set public access prevention to enforced. var updatedBucket = setPublicAccessPreventionEnforcedSample.SetPublicAccessPreventionEnforced(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); Assert.Equal("enforced", updatedBucket.IamConfiguration.PublicAccessPrevention); }
public void SetRpoDefault() { SetRpoDefaultSample setRPODefaultSample = new SetRpoDefaultSample(); GetRpoSample getRpoSample = new GetRpoSample(); var bucketName = Guid.NewGuid().ToString(); _fixture.CreateBucket(bucketName, "nam4"); setRPODefaultSample.SetRpoDefault(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); var rpo = getRpoSample.GetRpo(bucketName); Assert.Equal("DEFAULT", rpo); }
public void TestEnableUniformBucketLevelAccess() { EnableUniformBucketLevelAccessSample enableUniformBucketLevelAccessSample = new EnableUniformBucketLevelAccessSample(); var bucketName = Guid.NewGuid().ToString(); // Create bucket _fixture.CreateBucket(bucketName); // Enable Uniform bucket level access. var updatedBucket = enableUniformBucketLevelAccessSample.EnableUniformBucketLevelAccess(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); Assert.True(updatedBucket.IamConfiguration.UniformBucketLevelAccess.Enabled); }
public void SetRpoAsyncTurbo() { SetRpoAsyncTurboSample setRpoAsyncTurboSample = new SetRpoAsyncTurboSample(); GetRpoSample getRpoSample = new GetRpoSample(); // Enabling turbo replication requires a bucket with dual-region configuration var bucketName = Guid.NewGuid().ToString(); _fixture.CreateBucket(bucketName, "nam4"); setRpoAsyncTurboSample.SetRpoAsyncTurbo(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); var rpo = getRpoSample.GetRpo(bucketName); Assert.Equal("ASYNC_TURBO", rpo); }
public void TestGetUniformBucketLevelAccess() { EnableUniformBucketLevelAccessSample enableUniformBucketLevelAccessSample = new EnableUniformBucketLevelAccessSample(); GetUniformBucketLevelAccessSample getUniformBucketLevelAccessSample = new GetUniformBucketLevelAccessSample(); var bucketName = Guid.NewGuid().ToString(); // Create bucket _fixture.CreateBucket(bucketName); // Enable Uniform bucket level access. enableUniformBucketLevelAccessSample.EnableUniformBucketLevelAccess(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); var uniformBucketLevelAccess = getUniformBucketLevelAccessSample.GetUniformBucketLevelAccess(bucketName); Assert.True(uniformBucketLevelAccess.Enabled); }
public void TestEnableRequesterPays() { EnableRequesterPaysSample enableRequesterPaysSample = new EnableRequesterPaysSample(); DisableRequesterPaysSample disableRequesterPaysSample = new DisableRequesterPaysSample(); var bucketName = Guid.NewGuid().ToString(); // Create bucket _fixture.CreateBucket(bucketName); // Enable request pay. var bucket = enableRequesterPaysSample.EnableRequesterPays(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); Assert.True(bucket.Billing?.RequesterPays); // Disable request pay. disableRequesterPaysSample.DisableRequesterPays(_fixture.ProjectId, bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); }
public void TestGetPublicAccessPrevention() { GetPublicAccessPreventionSample getPublicAccessPreventionSample = new GetPublicAccessPreventionSample(); var bucketName = Guid.NewGuid().ToString(); // Create bucket _fixture.CreateBucket(bucketName); // Set public access prevention to enforced. SetPublicAccessPreventionEnforcedSample setPublicAccessPreventionEnforcedSample = new SetPublicAccessPreventionEnforcedSample(); setPublicAccessPreventionEnforcedSample.SetPublicAccessPreventionEnforced(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); var publicAccessPrevention = getPublicAccessPreventionSample.GetPublicAccessPrevention(bucketName); Assert.Equal("enforced", publicAccessPrevention); }
public void TestAddBucketConditionalIamBinding() { AddBucketConditionalIamBindingSample addBucketConditionalIamBindingSample = new AddBucketConditionalIamBindingSample(); EnableUniformBucketLevelAccessSample enableUniformBucketLevelAccessSample = new EnableUniformBucketLevelAccessSample(); var bucketName = Guid.NewGuid().ToString(); string memberType = "serviceAccount"; string role = "roles/storage.objectViewer"; // Create bucket _fixture.CreateBucket(bucketName); // Enable Uniform bucket level access. enableUniformBucketLevelAccessSample.EnableUniformBucketLevelAccess(bucketName); _fixture.SleepAfterBucketCreateUpdateDelete(); // Add Conditional Binding. var policy = addBucketConditionalIamBindingSample.AddBucketConditionalIamBinding(bucketName, role, $"{memberType}:{_fixture.ServiceAccountEmail}", "title", "description", "resource.name.startsWith(\"projects/_/buckets/bucket-name/objects/prefix-a-\")"); _fixture.SleepAfterBucketCreateUpdateDelete(); Assert.Contains(policy.Bindings, c => c.Members.Contains($"{memberType}:{_fixture.ServiceAccountEmail}")); }