diff --git a/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1.Tests/StorageClientImplRetryTest.cs b/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1.Tests/StorageClientImplRetryTest.cs index 540c365bf0d9..ced70c1895ac 100644 --- a/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1.Tests/StorageClientImplRetryTest.cs +++ b/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1.Tests/StorageClientImplRetryTest.cs @@ -222,6 +222,21 @@ public void DeleteObject_RetryThenFail() => RetryThenFail(service => new ObjectsResource.DeleteRequest(service, "bucket", "objectName") { Generation = 70 }, client => client.DeleteObject("bucket", "objectName", new DeleteObjectOptions { Generation = 70 }), "check"); + [Fact] + public void DeleteObject_Object_NoRetry() => NoRetryHelper( + service => service.Objects.Delete("bucket", "objectName"), + client => client.DeleteObject(new Object { Bucket = "bucket", Name = "objectName" })); + + [Fact] + public void DeleteObject_Object_RetryOnce() => RetryOnce( + service => new ObjectsResource.DeleteRequest(service, "bucket", "objectName") { Generation = 70 }, + client => client.DeleteObject(new Object { Bucket = "bucket", Name = "objectName" }, new DeleteObjectOptions { Generation = 70 }), "check"); + + [Fact] + public void DeleteObject_Object_RetryThenFail() => + RetryThenFail(service => new ObjectsResource.DeleteRequest(service, "bucket", "objectName") { Generation = 70 }, + client => client.DeleteObject(new Object { Bucket = "bucket", Name = "objectName" }, new DeleteObjectOptions { Generation = 70 }), "check"); + [Fact] public void UpdateObject_WithMetageneration_RetryOnce() => RetryOnceHelper( service => new ObjectsResource.UpdateRequest(service, new Object { Bucket = "bucket", Name = "object" }, "bucket", "object") { IfMetagenerationMatch = 70 }, diff --git a/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1/StorageClientImpl.DeleteObject.cs b/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1/StorageClientImpl.DeleteObject.cs index 087e97696ad0..184a5e139cd2 100644 --- a/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1/StorageClientImpl.DeleteObject.cs +++ b/apis/Google.Cloud.Storage.V1/Google.Cloud.Storage.V1/StorageClientImpl.DeleteObject.cs @@ -53,9 +53,7 @@ public override Task DeleteObjectAsync(Object obj, DeleteObjectOptions options = private ObjectsResource.DeleteRequest CreateDeleteObjectRequest(Object obj, DeleteObjectOptions options) { ValidateObject(obj, nameof(obj)); - var request = Service.Objects.Delete(obj.Bucket, obj.Name); - options?.ModifyRequest(request); - return request; + return CreateDeleteObjectRequest(obj.Bucket, obj.Name, options); } private ObjectsResource.DeleteRequest CreateDeleteObjectRequest(string bucket, string name, DeleteObjectOptions options)