public async stt::Task CalculateCoverageRequestObjectAsync()
        {
            moq::Mock <TestCases.TestCasesClient> mockGrpcClient = new moq::Mock <TestCases.TestCasesClient>(moq::MockBehavior.Strict);

            mockGrpcClient.Setup(x => x.CreateOperationsClient()).Returns(new moq::Mock <lro::Operations.OperationsClient>().Object);
            CalculateCoverageRequest request = new CalculateCoverageRequest
            {
                Type             = CalculateCoverageRequest.Types.CoverageType.TransitionRouteGroup,
                AgentAsAgentName = AgentName.FromProjectLocationAgent("[PROJECT]", "[LOCATION]", "[AGENT]"),
            };
            CalculateCoverageResponse expectedResponse = new CalculateCoverageResponse
            {
                IntentCoverage     = new IntentCoverage(),
                TransitionCoverage = new TransitionCoverage(),
                AgentAsAgentName   = AgentName.FromProjectLocationAgent("[PROJECT]", "[LOCATION]", "[AGENT]"),
                RouteGroupCoverage = new TransitionRouteGroupCoverage(),
            };

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

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

            xunit::Assert.Same(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }
        public void CalculateCoverageRequestObject()
        {
            moq::Mock <TestCases.TestCasesClient> mockGrpcClient = new moq::Mock <TestCases.TestCasesClient>(moq::MockBehavior.Strict);

            mockGrpcClient.Setup(x => x.CreateOperationsClient()).Returns(new moq::Mock <lro::Operations.OperationsClient>().Object);
            CalculateCoverageRequest request = new CalculateCoverageRequest
            {
                Type             = CalculateCoverageRequest.Types.CoverageType.TransitionRouteGroup,
                AgentAsAgentName = AgentName.FromProjectLocationAgent("[PROJECT]", "[LOCATION]", "[AGENT]"),
            };
            CalculateCoverageResponse expectedResponse = new CalculateCoverageResponse
            {
                IntentCoverage     = new IntentCoverage(),
                TransitionCoverage = new TransitionCoverage(),
                AgentAsAgentName   = AgentName.FromProjectLocationAgent("[PROJECT]", "[LOCATION]", "[AGENT]"),
                RouteGroupCoverage = new TransitionRouteGroupCoverage(),
            };

            mockGrpcClient.Setup(x => x.CalculateCoverage(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            TestCasesClient           client   = new TestCasesClientImpl(mockGrpcClient.Object, null);
            CalculateCoverageResponse response = client.CalculateCoverage(request);

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