public void AMethodRequestObject()
        {
            moq::Mock <Basic.BasicClient> mockGrpcClient = new moq::Mock <Basic.BasicClient>(moq::MockBehavior.Strict);
            Request request           = new Request {
            };
            Response expectedResponse = new Response {
            };

            mockGrpcClient.Setup(x => x.AMethod(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            BasicClient client   = new BasicClientImpl(mockGrpcClient.Object, null, null);
            Response    response = client.AMethod(request);

            xunit::Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
        public async stt::Task AMethodRequestObjectAsync()
        {
            moq::Mock <Basic.BasicClient> mockGrpcClient = new moq::Mock <Basic.BasicClient>(moq::MockBehavior.Strict);
            Request request           = new Request {
            };
            Response expectedResponse = new Response {
            };

            mockGrpcClient.Setup(x => x.AMethodAsync(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(new grpccore::AsyncUnaryCall <Response>(stt::Task.FromResult(expectedResponse), null, null, null, null));
            BasicClient client = new BasicClientImpl(mockGrpcClient.Object, null, null);
            Response    responseCallSettings = await client.AMethodAsync(request, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None));

            xunit::Assert.Same(expectedResponse, responseCallSettings);
            Response responseCancellationToken = await client.AMethodAsync(request, st::CancellationToken.None);

            xunit::Assert.Same(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }