Class ProtoGrpcClientInitializer
Initializes a named gRPC client from an explicit address, or from the application it belongs to: the
application's Grpc:Address, its base address, or its in-process transport. The channel is
created when the client is first used, so an application whose test server starts later still works.
public sealed class ProtoGrpcClientInitializer : IProtoClientInitializer<ProtoGrpcClient>, IProtoClientInitializer
- Inheritance
-
ProtoGrpcClientInitializer
- Implements
- Inherited Members
- Extension Methods
Constructors
ProtoGrpcClientInitializer(string, string, GrpcClientOptions, string?, bool, string?, Func<ProtoExecutionContext, CancellationToken, ValueTask<Uri>>?)
Initializes a named gRPC client from an explicit address, or from the application it belongs to: the
application's Grpc:Address, its base address, or its in-process transport. The channel is
created when the client is first used, so an application whose test server starts later still works.
public ProtoGrpcClientInitializer(string protocolName, string name, GrpcClientOptions options, string? explicitAddress = null, bool allowMissingAddress = false, string? application = null, Func<ProtoExecutionContext, CancellationToken, ValueTask<Uri>>? addressResolver = null)
Parameters
protocolNamestringnamestringoptionsGrpcClientOptionsexplicitAddressstringallowMissingAddressboolapplicationstringaddressResolverFunc<ProtoExecutionContext, CancellationToken, ValueTask<Uri>>
Properties
Name
Gets the registration name for this client (e.g., "Default", "OrderService"). Initializers with the same Protocol, client type and name form an ordered provider chain.
public string Name { get; }
Property Value
Protocol
Gets the protocol this initializer serves (for example "Rest"), or null for a
host-level client. Protocols keep their own provider chains, and a provider registers its client
under Protocol:Name (see ScopedName(string?, string)),
so two protocols can own the same client name without shadowing each other.
public string Protocol { get; }
Property Value
Methods
TryInitializeAsync(ProtoExecutionContext)
Attempts to build and register the client into the specified test execution context. Returns false without changing the context when this initializer cannot provide the client for the current configuration.
The test lifecycle carries the caller's cancellation token, or the runner's own where its adapter has one; an initializer reads it from CancellationToken and passes it to its own I/O. MSTest's extension point exposes no token, so that adapter starts with None; a run-scoped hook is the cancellable extension point.
public Task<bool> TryInitializeAsync(ProtoExecutionContext context)
Parameters
contextProtoExecutionContext