public void CreateBucketWithStorageClass(string storageClass) { string bucketName = $"{_fixture.BucketPrefix}-with-class-{storageClass.ToLowerInvariant()}"; var client = _fixture.Client; var bucket = client.CreateBucket(_fixture.ProjectId, new Bucket { Name = bucketName, StorageClass = storageClass }); StorageFixture.SleepAfterBucketCreateDelete(); _fixture.RegisterBucketToDelete(bucketName); Assert.Equal(storageClass, bucket.StorageClass); bucket = client.GetBucket(bucketName); Assert.Equal(storageClass, bucket.StorageClass); }
public void CreateBucketAndObjects() { // Note: this test may fail if the project location prevents multi-regional storage. string initialBucketStorageClass = StorageClasses.MultiRegional; string updatedObjectStorageClass = StorageClasses.Coldline; string updatedBucketStorageClass = StorageClasses.Nearline; string bucketName = _fixture.BucketPrefix + "storage-classes"; string objectName = IdGenerator.FromGuid(); var client = _fixture.Client; client.CreateBucket(_fixture.ProjectId, new Bucket { Name = bucketName, StorageClass = initialBucketStorageClass }); StorageFixture.SleepAfterBucketCreateDelete(); _fixture.RegisterBucketToDelete(bucketName); var bucket = client.GetBucket(bucketName); Assert.Equal(initialBucketStorageClass, bucket.StorageClass); var obj = client.UploadObject(bucketName, objectName, "application/octet-stream", TestHelpers.GenerateData(100)); Assert.Equal(initialBucketStorageClass, obj.StorageClass); // Change storage class via a rewrite var options = new CopyObjectOptions { ExtraMetadata = new Object { StorageClass = updatedObjectStorageClass } }; client.CopyObject(bucketName, objectName, bucketName, objectName, options); // Fetch separately rather than trusting the return value of CopyObject... obj = client.GetObject(bucketName, objectName); Assert.Equal(updatedObjectStorageClass, obj.StorageClass); bucket.StorageClass = updatedBucketStorageClass; client.UpdateBucket(bucket); string objectName2 = IdGenerator.FromGuid(); var obj2 = client.UploadObject(bucketName, objectName2, "application/octet-stream", TestHelpers.GenerateData(100)); Assert.Equal(updatedBucketStorageClass, obj2.StorageClass); }