Class ProtoGrpcClient

Namespace
ProtoTest.Grpc
Assembly
ProtoTest.Grpc.dll

A named gRPC client created during setup by ProtoGrpcClientInitializer. Every call is traced as a grpc.call operation with request/response sections and sanitized metadata, applies the test's [Auth] authenticators to the call metadata, and reports a grpc.response observation so coverage collectors can aggregate it.

public sealed class ProtoGrpcClient : IDisposable
Inheritance
ProtoGrpcClient
Implements
Inherited Members
Extension Methods

Properties

Blocking

The synchronous entry points for callers whose test code cannot await. Each blocks the calling thread while authenticators and the channel are prepared; prefer the async opens where possible.

public ProtoGrpcBlockingClient Blocking { get; }

Property Value

ProtoGrpcBlockingClient

Methods

ClientStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse>, IEnumerable<TRequest>, Action<Metadata>?, DateTime?, CancellationToken)

Sends every request on a client-streaming method and waits for its response.

public Task<TResponse> ClientStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse> method, IEnumerable<TRequest> requests, Action<Metadata>? metadata = null, DateTime? deadline = null, CancellationToken cancellationToken = default) where TRequest : class where TResponse : class

Parameters

method Method<TRequest, TResponse>
requests IEnumerable<TRequest>
metadata Action<Metadata>
deadline DateTime?
cancellationToken CancellationToken

Returns

Task<TResponse>

Type Parameters

TRequest
TResponse

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

OpenDuplexStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse>, Action<Metadata>?, DateTime?, CancellationToken)

Opens a raw duplex-streaming call without blocking the caller.

public Task<AsyncDuplexStreamingCall<TRequest, TResponse>> OpenDuplexStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse> method, Action<Metadata>? metadata = null, DateTime? deadline = null, CancellationToken cancellationToken = default) where TRequest : class where TResponse : class

Parameters

method Method<TRequest, TResponse>
metadata Action<Metadata>
deadline DateTime?
cancellationToken CancellationToken

Returns

Task<AsyncDuplexStreamingCall<TRequest, TResponse>>

Type Parameters

TRequest
TResponse

OpenServerStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse>, TRequest, Action<Metadata>?, DateTime?, CancellationToken)

Opens a raw server-streaming call without blocking the caller.

public Task<AsyncServerStreamingCall<TResponse>> OpenServerStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse> method, TRequest request, Action<Metadata>? metadata = null, DateTime? deadline = null, CancellationToken cancellationToken = default) where TRequest : class where TResponse : class

Parameters

method Method<TRequest, TResponse>
request TRequest
metadata Action<Metadata>
deadline DateTime?
cancellationToken CancellationToken

Returns

Task<AsyncServerStreamingCall<TResponse>>

Type Parameters

TRequest
TResponse

ServerStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse>, TRequest, Action<Metadata>?, DateTime?, CancellationToken)

Reads a server-streaming method to completion and returns the response messages.

public Task<IReadOnlyList<TResponse>> ServerStreamingAsync<TRequest, TResponse>(Method<TRequest, TResponse> method, TRequest request, Action<Metadata>? metadata = null, DateTime? deadline = null, CancellationToken cancellationToken = default) where TRequest : class where TResponse : class

Parameters

method Method<TRequest, TResponse>
request TRequest
metadata Action<Metadata>
deadline DateTime?
cancellationToken CancellationToken

Returns

Task<IReadOnlyList<TResponse>>

Type Parameters

TRequest
TResponse

UnaryAsync<TRequest, TResponse>(Method<TRequest, TResponse>, TRequest, Action<Metadata>?, DateTime?, CancellationToken)

Calls a unary method and waits for its response.

public Task<TResponse> UnaryAsync<TRequest, TResponse>(Method<TRequest, TResponse> method, TRequest request, Action<Metadata>? metadata = null, DateTime? deadline = null, CancellationToken cancellationToken = default) where TRequest : class where TResponse : class

Parameters

method Method<TRequest, TResponse>
request TRequest
metadata Action<Metadata>
deadline DateTime?
cancellationToken CancellationToken

Returns

Task<TResponse>

Type Parameters

TRequest
TResponse