public override Task <Object> UpdateObjectAsync( Object obj, UpdateObjectOptions options = null, CancellationToken cancellationToken = default(CancellationToken)) { return(Task.FromResult(obj)); }
public void ModifyRequest_PositiveMatchOptions() { var obj = new Object { Generation = 10L, Metageneration = 20L }; var request = new UpdateRequest(null, obj, "bucket", "object"); var options = new UpdateObjectOptions { Generation = 1L, IfGenerationMatch = 2L, IfMetagenerationMatch = 3L, PredefinedAcl = PredefinedObjectAcl.AuthenticatedRead, Projection = Projection.Full, UserProject = "proj" }; options.ModifyRequest(request, obj); Assert.Equal(1L, request.Generation); Assert.Equal(2L, request.IfGenerationMatch); Assert.Null(request.IfGenerationNotMatch); Assert.Equal(3L, request.IfMetagenerationMatch); Assert.Null(request.IfMetagenerationNotMatch); Assert.Equal(PredefinedAclEnum.AuthenticatedRead, request.PredefinedAcl); Assert.Equal(ProjectionEnum.Full, request.Projection); Assert.Equal("proj", request.UserProject); }
public void ModifyRequest_ForceNoPreconditions_ButPreconditionsSet() { var obj = new Object { Generation = 10L, Metageneration = 20L }; var request = new UpdateRequest(null, obj, "bucket", "object"); var options = new UpdateObjectOptions { ForceNoPreconditions = true, IfGenerationMatch = 2L }; Assert.Throws <ArgumentException>(() => options.ModifyRequest(request, obj)); }
public void ModifyRequest_DefaultOptions() { var obj = new Object { Generation = 10L, Metageneration = 20L }; var request = new UpdateRequest(null, obj, "bucket", "object"); var options = new UpdateObjectOptions(); options.ModifyRequest(request, obj); Assert.Null(request.Generation); Assert.Equal(10L, request.IfGenerationMatch); Assert.Null(request.IfGenerationNotMatch); Assert.Equal(20L, request.IfMetagenerationMatch); Assert.Null(request.IfMetagenerationNotMatch); Assert.Null(request.PredefinedAcl); Assert.Null(request.Projection); }
public void ModifyRequest_ForceNoPreconditions() { var obj = new Object { Generation = 10L, Metageneration = 20L }; var request = new UpdateRequest(null, obj, "bucket", "object"); var options = new UpdateObjectOptions { ForceNoPreconditions = true }; options.ModifyRequest(request, obj); Assert.Null(request.Generation); Assert.Null(request.IfGenerationMatch); Assert.Null(request.IfGenerationNotMatch); Assert.Null(request.IfMetagenerationMatch); Assert.Null(request.IfMetagenerationNotMatch); Assert.Null(request.PredefinedAcl); Assert.Null(request.Projection); }
public void ModifyRequest_MatchNotMatchConflicts() { var obj = new Object { Generation = 10L, Metageneration = 20L }; var request = new UpdateRequest(null, obj, "bucket", "object"); Assert.Throws <ArgumentException>(() => { var options = new UpdateObjectOptions { IfGenerationMatch = 1L, IfGenerationNotMatch = 2L }; options.ModifyRequest(request, obj); }); Assert.Throws <ArgumentException>(() => { var options = new UpdateObjectOptions { IfMetagenerationMatch = 1L, IfMetagenerationNotMatch = 2L }; options.ModifyRequest(request, obj); }); }
// ************************************************************************************************************* // UPDATE OBJECT public override Object UpdateObject( Object obj, UpdateObjectOptions options = null) { return(obj); }