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);
    }
Ejemplo n.º 2
0
    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"));
    }
Ejemplo n.º 3
0
    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);
    }
Ejemplo n.º 4
0
    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);
    }
Ejemplo n.º 6
0
    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();
    }
Ejemplo n.º 10
0
    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);
    }
Ejemplo n.º 11
0
    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}"));
    }