69 lines
No EOL
2.5 KiB
C#
69 lines
No EOL
2.5 KiB
C#
using FrostFS.Container;
|
|
using FrostFS.Session;
|
|
using Google.Protobuf;
|
|
using Grpc.Core;
|
|
using Moq;
|
|
|
|
namespace FrostFS.SDK.Tests;
|
|
|
|
public class DeleteContainerMock(string key) : ContainerServiceBase(key)
|
|
{
|
|
public override Mock<ContainerService.ContainerServiceClient> GetMock()
|
|
{
|
|
var mock = new Mock<ContainerService.ContainerServiceClient>();
|
|
|
|
var v = mock.Setup(x => x.DeleteAsync(
|
|
It.IsAny<DeleteRequest>(),
|
|
It.IsAny<Metadata>(),
|
|
It.IsAny<DateTime?>(),
|
|
It.IsAny<CancellationToken>()));
|
|
|
|
|
|
v.Returns((Object.DeleteRequest r, Metadata m, DateTime? dt, CancellationToken ct) =>
|
|
{
|
|
var deleteResponse = new Object.DeleteResponse
|
|
{
|
|
Body = new Object.DeleteResponse.Types.Body
|
|
{
|
|
Tombstone = new Refs.Address
|
|
{
|
|
ContainerId = new Refs.ContainerID { Value = ByteString.CopyFrom([1, 2, 3]) },
|
|
ObjectId = new Refs.ObjectID { Value = ByteString.CopyFrom([4, 5, 6]) }
|
|
}
|
|
},
|
|
MetaHeader = new ResponseMetaHeader()
|
|
};
|
|
|
|
var metadata = new Metadata();
|
|
|
|
return new AsyncUnaryCall<Object.DeleteResponse>(
|
|
Task.FromResult(deleteResponse),
|
|
Task.FromResult(metadata),
|
|
() => new Grpc.Core.Status(StatusCode.OK, string.Empty),
|
|
() => metadata,
|
|
() => { });
|
|
});
|
|
|
|
return mock;
|
|
}
|
|
}
|
|
|
|
|
|
// objectServiceClientMock.Setup(x => x.Head(It.IsAny<Object.HeadRequest>(), It.IsAny<Metadata>(), It.IsAny<DateTime>(), It.IsAny<CancellationToken>()))
|
|
// .Returns((Object.DeleteRequest r, Metadata m, DateTime dt, CancellationToken ct) =>
|
|
// {
|
|
// return new
|
|
// {
|
|
// Body = new Object.DeleteResponse.Types.Body
|
|
// {
|
|
// Tombstone = new Refs.Address
|
|
// {
|
|
// ContainerId = new Refs.ContainerID { Value = ByteString.CopyFrom([1, 2, 3]) },
|
|
// ObjectId = new Refs.ObjectID { Value = ByteString.CopyFrom([4, 5, 6]) }
|
|
// }
|
|
// }
|
|
// };
|
|
// });
|
|
|
|
|
|
|