Example #1
0
        public async stt::Task MutateCustomerCustomizersRequestObjectAsync()
        {
            moq::Mock <CustomerCustomizerService.CustomerCustomizerServiceClient> mockGrpcClient = new moq::Mock <CustomerCustomizerService.CustomerCustomizerServiceClient>(moq::MockBehavior.Strict);
            MutateCustomerCustomizersRequest request = new MutateCustomerCustomizersRequest
            {
                CustomerId = "customer_id3b3724cb",
                Operations =
                {
                    new CustomerCustomizerOperation(),
                },
                PartialFailure      = false,
                ValidateOnly        = true,
                ResponseContentType = gagve::ResponseContentTypeEnum.Types.ResponseContentType.ResourceNameOnly,
            };
            MutateCustomerCustomizersResponse expectedResponse = new MutateCustomerCustomizersResponse
            {
                Results =
                {
                    new MutateCustomerCustomizerResult(),
                },
                PartialFailureError = new gr::Status(),
            };

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

            Assert.AreEqual(expectedResponse, responseCallSettings);
            MutateCustomerCustomizersResponse responseCancellationToken = await client.MutateCustomerCustomizersAsync(request, st::CancellationToken.None);

            Assert.AreEqual(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }
Example #2
0
        public void MutateCustomerCustomizers()
        {
            moq::Mock <CustomerCustomizerService.CustomerCustomizerServiceClient> mockGrpcClient = new moq::Mock <CustomerCustomizerService.CustomerCustomizerServiceClient>(moq::MockBehavior.Strict);
            MutateCustomerCustomizersRequest request = new MutateCustomerCustomizersRequest
            {
                CustomerId = "customer_id3b3724cb",
                Operations =
                {
                    new CustomerCustomizerOperation(),
                },
            };
            MutateCustomerCustomizersResponse expectedResponse = new MutateCustomerCustomizersResponse
            {
                Results =
                {
                    new MutateCustomerCustomizerResult(),
                },
                PartialFailureError = new gr::Status(),
            };

            mockGrpcClient.Setup(x => x.MutateCustomerCustomizers(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            CustomerCustomizerServiceClient   client   = new CustomerCustomizerServiceClientImpl(mockGrpcClient.Object, null);
            MutateCustomerCustomizersResponse response = client.MutateCustomerCustomizers(request.CustomerId, request.Operations);

            Assert.AreEqual(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
        // [END add_responsive_search_ad_with_ad_customizer_1]

        // [START add_responsive_search_ad_with_ad_customizer_2]
        /// <summary>
        /// Links the customizer attribute to the customer by providing a value to be used in a
        /// responsive search ad that will be created in a later step.
        /// </summary>
        /// <param name="client">The Google Ads API client.</param>
        /// <param name="customerId">The customer ID.</param>
        /// <param name="customizerAttributeResourceName">The resource name of the customizer
        /// attribute.</param>
        private void LinkCustomizerAttributeToCustomer(
            GoogleAdsClient client,
            long customerId,
            string customizerAttributeResourceName)
        {
            // Creates a customer customizer operation.
            CustomerCustomizerOperation operation = new CustomerCustomizerOperation()
            {
                // Creates a customer customizer with the value to be used in the responsive search
                // ad.
                Create = new CustomerCustomizer()
                {
                    CustomizerAttribute = customizerAttributeResourceName,

                    Value = new CustomizerValue()
                    {
                        Type = CustomizerAttributeType.Price,

                        // Specify '100USD' as a text value. The ad customizer will dynamically
                        // replace the placeholder with this value when the ad serves.
                        StringValue = "100USD"
                    }
                }
            };

            CustomerCustomizerServiceClient serviceClient =
                client.GetService(Services.V10.CustomerCustomizerService);

            // Issues a mutate request to add the customer customizer and prints its information.
            MutateCustomerCustomizersResponse response =
                serviceClient.MutateCustomerCustomizers(
                    customerId.ToString(),
                    new [] { operation }.ToList()
                    );

            string resourceName = response.Results[0].ResourceName;

            Console.WriteLine($"Added a customer customizer with resource name '{resourceName}'.");
        }