public void ListPhotosRequest_Arguments_ProducesAnExpectedURI() { var order = Order.POPULAR; uint page = 2; uint perPage = 15; var request = new ListPhotosRequest(order, page, perPage); Assert.Matches($"&order_by={order.Describe()}&page={page}&per_page={perPage}", request.Uri.AbsoluteUri); }
public void ListPhotosRequest_ArgumentsPerPageGreaterThanDefault_ProducesAnExpectedURI() { var order = Order.POPULAR; uint page = 2; uint perPage = Defaults.PerPageMax + 1; var request = new ListPhotosRequest(order, page, perPage); Assert.Matches($"&order_by={order.Describe()}&page={page}&per_page={Defaults.PerPageMax}", request.Uri.AbsoluteUri); }
public async Task ListPhotosAsync_RequestObject() { // Snippet: ListPhotosAsync(ListPhotosRequest,CallSettings) // Create client StreetViewPublishServiceClient streetViewPublishServiceClient = await StreetViewPublishServiceClient.CreateAsync(); // Initialize request argument(s) ListPhotosRequest request = new ListPhotosRequest { View = PhotoView.Basic, Filter = "", }; // Make the request PagedAsyncEnumerable <ListPhotosResponse, Photo> response = streetViewPublishServiceClient.ListPhotosAsync(request); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((Photo item) => { // Do something with each item Console.WriteLine(item); }); // Or iterate over pages (of server-defined size), performing one RPC per page await response.AsRawResponses().ForEachAsync((ListPhotosResponse page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (Photo item in page) { Console.WriteLine(item); } }); // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required int pageSize = 10; Page <Photo> singlePage = await response.ReadPageAsync(pageSize); // Do something with the page of items Console.WriteLine($"A page of {pageSize} results (unless it's the final page):"); foreach (Photo item in singlePage) { Console.WriteLine(item); } // Store the pageToken, for when the next page is required. string nextPageToken = singlePage.NextPageToken; // End snippet }