public async Task ItemSearch() { IWalmartClient walmartClient = new HttpWalmartClient(); WalmartResult <ItemLookupResponse> result = await walmartClient.ItemLookupAsync("12417832,19336123", null); //WalmartResult<ItemLookupResponse> result = await walmartClient.ItemLookupAsync("12417832", null); Assert.IsFalse(result.IsError); }
/// <inheritdoc /> public async Task <WalmartResult <ItemLookupResponse> > ItemLookupAsync(string itemIDs, string[] upcs) { //conditions Condition.Requires(itemIDs).IsNotNull(); Condition.Requires(itemIDs.Count()).IsGreaterThan(0); //create the payload to pass var payload = new ItemLookupRequest(this.apiKey, this.lsPublisherId, itemIDs); //serialize object var keyValueContent = payload.ToKeyValue(); //encode as url content var formUrlEncodedContent = new FormUrlEncodedContent(keyValueContent); //create the URI string uri = WalmartInformation.ItemsEndpoint + "?" + await formUrlEncodedContent.ReadAsStringAsync(); //post it and get the response HttpResponseMessage response = await this.httpClient.GetAsync(uri);//.PostAsync(WalmartInformation.ItemsEndpoint, content); //read the string string responseJson = await response.Content.ReadAsStringAsync(); //create the result WalmartResult <ItemLookupResponse> result = new WalmartResult <ItemLookupResponse>(responseJson); //is it ok if (response.StatusCode == HttpStatusCode.OK) { ItemLookupResponse itemLookupResponse = JsonConvert.DeserializeObject <ItemLookupResponse>(responseJson); result.Value = itemLookupResponse; } //parse the exception result.Exception = await this.ParseException(response, responseJson); //return return(result); }