[#28] Client: Use external GRPC Channnel
Signed-off-by: Pavel Gross <p.gross@yadro.com>
This commit is contained in:
parent
9bb7b5eff8
commit
c9418a1894
27 changed files with 520 additions and 438 deletions
|
@ -19,7 +19,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void AccountTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
var result = await client.GetBalanceAsync(default);
|
||||
|
||||
|
@ -30,7 +30,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void NetworkMapTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
var result = await client.GetNetmapSnapshotAsync(default);
|
||||
|
||||
|
@ -50,7 +50,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void NodeInfoTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
var result = await client.GetNodeInfoAsync(default);
|
||||
|
||||
|
@ -65,12 +65,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void NodeInfoStatisticsTest()
|
||||
{
|
||||
var options = GetClientOptions(keyString, url);
|
||||
var options = ClientOptions;
|
||||
|
||||
var callbackContent = string.Empty;
|
||||
options.Value.Callback = (cs) => callbackContent = $"{cs.MethodName} took {cs.ElapsedMicroSeconds} microseconds";
|
||||
|
||||
using var client = FrostFSClient.GetInstance(options);
|
||||
var client = FrostFSClient.GetInstance(options, GrpcChannel);
|
||||
|
||||
var result = await client.GetNodeInfoAsync(default);
|
||||
|
||||
|
@ -80,12 +80,10 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void GetSessionTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
var token = await client.CreateSessionAsync(new(100), default);
|
||||
|
||||
var ownerHash = Base58.Decode(OwnerId!.Value);
|
||||
|
||||
Assert.NotNull(token);
|
||||
Assert.NotEqual(Guid.Empty, token.Id);
|
||||
Assert.Equal(33, token.SessionKey.Length);
|
||||
|
@ -94,7 +92,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void CreateObjectWithSessionToken()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
await Cleanup(client);
|
||||
|
||||
|
@ -114,11 +112,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
containerId: containerId,
|
||||
type: FrostFsObjectType.Regular,
|
||||
[new FrostFsAttributePair("fileName", "test")]),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: false,
|
||||
sessionToken: token);
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
var stream = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
await stream.WriteAsync(bytes.AsMemory());
|
||||
var objectId = await stream.CompleteAsync();
|
||||
|
||||
var @object = await client.GetObjectAsync(new PrmObjectGet(containerId, objectId), default)
|
||||
.ConfigureAwait(true);
|
||||
|
@ -140,7 +139,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void FilterTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
await Cleanup(client);
|
||||
|
||||
|
@ -164,11 +163,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
containerId: containerId,
|
||||
type: FrostFsObjectType.Regular,
|
||||
[new FrostFsAttributePair("fileName", "test")],
|
||||
new FrostFsSplit()),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: false);
|
||||
new FrostFsSplit()));
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default);
|
||||
var stream = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
await stream.WriteAsync(bytes.AsMemory());
|
||||
var objectId = await stream.CompleteAsync();
|
||||
|
||||
var head = await client.GetObjectHeadAsync(new PrmObjectHeadGet(containerId, objectId), default);
|
||||
|
||||
|
@ -222,7 +222,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
{
|
||||
bool callbackInvoked = false;
|
||||
|
||||
var options = GetClientOptions(keyString, url);
|
||||
var options = ClientOptions;
|
||||
|
||||
options.Value.Callback = new((cs) =>
|
||||
{
|
||||
|
@ -230,7 +230,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
Assert.True(cs.ElapsedMicroSeconds > 0);
|
||||
});
|
||||
|
||||
using var client = FrostFSClient.GetInstance(options);
|
||||
var client = FrostFSClient.GetInstance(options, GrpcChannel);
|
||||
|
||||
await Cleanup(client);
|
||||
|
||||
|
@ -253,11 +253,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
new FrostFsObjectHeader(
|
||||
containerId: createdContainer,
|
||||
type: FrostFsObjectType.Regular,
|
||||
[new FrostFsAttributePair("fileName", "test")]),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: false);
|
||||
[new FrostFsAttributePair("fileName", "test")]));
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default);
|
||||
var stream = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
await stream.WriteAsync(bytes.AsMemory());
|
||||
var objectId = await stream.CompleteAsync();
|
||||
|
||||
var filter = new FilterByAttributePair(FrostFsMatchType.Equals, "fileName", "test");
|
||||
|
||||
|
@ -302,7 +303,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void PatchTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
await Cleanup(client);
|
||||
|
||||
|
@ -326,11 +327,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
new FrostFsObjectHeader(
|
||||
containerId: createdContainer,
|
||||
type: FrostFsObjectType.Regular,
|
||||
[new FrostFsAttributePair("fileName", "test")]),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: false);
|
||||
[new FrostFsAttributePair("fileName", "test")]));
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default);
|
||||
var stream = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
await stream.WriteAsync(bytes.AsMemory());
|
||||
var objectId = await stream.CompleteAsync();
|
||||
|
||||
var patch = new byte[16];
|
||||
for (int i = 0; i < 16; i++)
|
||||
|
@ -381,7 +383,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void RangeTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
await Cleanup(client);
|
||||
|
||||
|
@ -402,11 +404,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
}
|
||||
|
||||
var param = new PrmObjectPut(
|
||||
new FrostFsObjectHeader(containerId: createdContainer, type: FrostFsObjectType.Regular),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: false);
|
||||
new FrostFsObjectHeader(containerId: createdContainer, type: FrostFsObjectType.Regular));
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default);
|
||||
var stream = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
await stream.WriteAsync(bytes.AsMemory());
|
||||
var objectId = await stream.CompleteAsync();
|
||||
|
||||
var rangeParam = new PrmRangeGet(createdContainer, objectId, new FrostFsRange(100, 64));
|
||||
|
||||
|
@ -434,7 +437,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[Fact]
|
||||
public async void RangeHashTest()
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
|
||||
await Cleanup(client);
|
||||
|
||||
|
@ -457,11 +460,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
var param = new PrmObjectPut(
|
||||
new FrostFsObjectHeader(
|
||||
containerId: createdContainer,
|
||||
type: FrostFsObjectType.Regular),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: false);
|
||||
type: FrostFsObjectType.Regular));
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default);
|
||||
var stream = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
await stream.WriteAsync(bytes.AsMemory());
|
||||
var objectId = await stream.CompleteAsync();
|
||||
|
||||
var rangeParam = new PrmRangeHashGet(createdContainer, objectId, [new FrostFsRange(100, 64)], bytes);
|
||||
|
||||
|
@ -486,7 +490,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[InlineData(6 * 1024 * 1024 + 100)]
|
||||
public async void SimpleScenarioWithSessionTest(int objectSize)
|
||||
{
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(ClientOptions, GrpcChannel);
|
||||
//Callback = new((CallStatistics cs) => Assert.True(cs.ElapsedMicroSeconds > 0))
|
||||
var token = await client.CreateSessionAsync(new PrmSessionCreate(int.MaxValue), default);
|
||||
|
||||
|
@ -510,11 +514,12 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
containerId: container,
|
||||
type: FrostFsObjectType.Regular,
|
||||
[new FrostFsAttributePair("fileName", "test")]),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: false,
|
||||
sessionToken: token);
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default);
|
||||
var stream = await client.PutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
await stream.WriteAsync(bytes.AsMemory());
|
||||
var objectId = await stream.CompleteAsync();
|
||||
|
||||
var filter = new FilterByAttributePair(FrostFsMatchType.Equals, "fileName", "test");
|
||||
|
||||
|
@ -567,11 +572,10 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
[InlineData(200)]
|
||||
public async void ClientCutScenarioTest(int objectSize)
|
||||
{
|
||||
|
||||
var options = GetClientOptions(keyString, url);
|
||||
var options = ClientOptions;
|
||||
options.Value.Interceptors.Add(new CallbackInterceptor());
|
||||
|
||||
using var client = FrostFSClient.GetInstance(GetClientOptions(keyString, url));
|
||||
var client = FrostFSClient.GetInstance(options, GrpcChannel);
|
||||
|
||||
await Cleanup(client);
|
||||
|
||||
|
@ -589,15 +593,14 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
|
||||
byte[] bytes = GetRandomBytes(objectSize);
|
||||
|
||||
var param = new PrmObjectPut(
|
||||
var param = new PrmObjectClientCutPut(
|
||||
new FrostFsObjectHeader(
|
||||
containerId: containerId,
|
||||
type: FrostFsObjectType.Regular,
|
||||
[new FrostFsAttributePair("fileName", "test")]),
|
||||
payload: new MemoryStream(bytes),
|
||||
clientCut: true);
|
||||
payload: new MemoryStream(bytes));
|
||||
|
||||
var objectId = await client.PutObjectAsync(param, default);
|
||||
var objectId = await client.PutClientCutObjectAsync(param, default).ConfigureAwait(true);
|
||||
|
||||
var filter = new FilterByAttributePair(FrostFsMatchType.Equals, "fileName", "test");
|
||||
|
||||
|
@ -659,7 +662,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
bool callbackInvoked = false;
|
||||
bool intercepterInvoked = false;
|
||||
|
||||
var options = GetClientOptions(keyString, url);
|
||||
var options = ClientOptions;
|
||||
options.Value.Callback = (cs) =>
|
||||
{
|
||||
callbackInvoked = true;
|
||||
|
@ -668,7 +671,7 @@ public class MultithreadSmokeClientTests : SmokeTestsBase
|
|||
|
||||
options.Value.Interceptors.Add(new CallbackInterceptor(s => intercepterInvoked = true));
|
||||
|
||||
using var client = FrostFSClient.GetInstance(options);
|
||||
var client = FrostFSClient.GetInstance(options, GrpcChannel);
|
||||
|
||||
var result = await client.GetNodeInfoAsync(default);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue