public async stt::Task MutateAssetGroupsAsync()
        {
            moq::Mock <AssetGroupService.AssetGroupServiceClient> mockGrpcClient = new moq::Mock <AssetGroupService.AssetGroupServiceClient>(moq::MockBehavior.Strict);
            MutateAssetGroupsRequest request = new MutateAssetGroupsRequest
            {
                CustomerId = "customer_id3b3724cb",
                Operations =
                {
                    new AssetGroupOperation(),
                },
            };
            MutateAssetGroupsResponse expectedResponse = new MutateAssetGroupsResponse
            {
                Results =
                {
                    new MutateAssetGroupResult(),
                },
                PartialFailureError = new gr::Status(),
            };

            mockGrpcClient.Setup(x => x.MutateAssetGroupsAsync(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(new grpccore::AsyncUnaryCall <MutateAssetGroupsResponse>(stt::Task.FromResult(expectedResponse), null, null, null, null));
            AssetGroupServiceClient   client = new AssetGroupServiceClientImpl(mockGrpcClient.Object, null);
            MutateAssetGroupsResponse responseCallSettings = await client.MutateAssetGroupsAsync(request.CustomerId, request.Operations, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None));

            Assert.AreEqual(expectedResponse, responseCallSettings);
            MutateAssetGroupsResponse responseCancellationToken = await client.MutateAssetGroupsAsync(request.CustomerId, request.Operations, st::CancellationToken.None);

            Assert.AreEqual(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }
        public void MutateAssetGroups()
        {
            moq::Mock <AssetGroupService.AssetGroupServiceClient> mockGrpcClient = new moq::Mock <AssetGroupService.AssetGroupServiceClient>(moq::MockBehavior.Strict);
            MutateAssetGroupsRequest request = new MutateAssetGroupsRequest
            {
                CustomerId = "customer_id3b3724cb",
                Operations =
                {
                    new AssetGroupOperation(),
                },
            };
            MutateAssetGroupsResponse expectedResponse = new MutateAssetGroupsResponse
            {
                Results =
                {
                    new MutateAssetGroupResult(),
                },
                PartialFailureError = new gr::Status(),
            };

            mockGrpcClient.Setup(x => x.MutateAssetGroups(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            AssetGroupServiceClient   client   = new AssetGroupServiceClientImpl(mockGrpcClient.Object, null);
            MutateAssetGroupsResponse response = client.MutateAssetGroups(request.CustomerId, request.Operations);

            Assert.AreEqual(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
 /// <summary>
 /// Creates, updates or removes asset groups. Operation statuses are
 /// returned.
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public override stt::Task <MutateAssetGroupsResponse> MutateAssetGroupsAsync(MutateAssetGroupsRequest request, gaxgrpc::CallSettings callSettings = null)
 {
     Modify_MutateAssetGroupsRequest(ref request, ref callSettings);
     return(_callMutateAssetGroups.Async(request, callSettings));
 }
 partial void Modify_MutateAssetGroupsRequest(ref MutateAssetGroupsRequest request, ref gaxgrpc::CallSettings settings);
 /// <summary>
 /// Creates, updates or removes asset groups. Operation statuses are
 /// returned.
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="cancellationToken">A <see cref="st::CancellationToken"/> to use for this RPC.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public virtual stt::Task <MutateAssetGroupsResponse> MutateAssetGroupsAsync(MutateAssetGroupsRequest request, st::CancellationToken cancellationToken) =>
 MutateAssetGroupsAsync(request, gaxgrpc::CallSettings.FromCancellationToken(cancellationToken));
 /// <summary>
 /// Creates, updates or removes asset groups. Operation statuses are
 /// returned.
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public virtual stt::Task <MutateAssetGroupsResponse> MutateAssetGroupsAsync(MutateAssetGroupsRequest request, gaxgrpc::CallSettings callSettings = null) =>
 throw new sys::NotImplementedException();