public async static Task <HttpResponse> CancelItem(string itemId, bool debug = false) { try { PayoutsItemCancelRequest request = new PayoutsItemCancelRequest(itemId); var cancelResponse = await PayPalClient.client().Execute(request); var result = cancelResponse.Result <PayoutItemResponse>(); if (debug) { Console.WriteLine("Batch: {0}", result.PayoutBatchId); Console.WriteLine("Item: {0}", result.PayoutItemId); Console.WriteLine("status: {0}", result.TransactionStatus); Console.WriteLine("Links:"); foreach (LinkDescription link in result.Links) { Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method); } } return(cancelResponse); } catch (HttpException ex) { String errorString = ex.Message; Error error = ErrorUtil.deserializeError(errorString); ErrorUtil.printError(error); return(null); } }
public async void TestPayoutsItemCancelRequest() { var response = await PayoutsPostTest.TestCreatePayoutRequest(); CreatePayoutResponse batch = response.Result <CreatePayoutResponse>(); PayoutsGetRequest request = new PayoutsGetRequest(batch.BatchHeader.PayoutBatchId); Thread.Sleep(10000); HttpResponse getResponse = await TestHarness.client().Execute(request); PayoutBatch batchDetails = getResponse.Result <PayoutBatch>(); Assert.NotNull(batchDetails.Items); Assert.NotNull(batchDetails.Items[0]); Assert.NotNull(batchDetails.Items[0].PayoutItemId); Console.WriteLine("Status: " + batchDetails.Items[0].TransactionStatus); Thread.Sleep(10000); if (batchDetails.Items[0].TransactionStatus.Equals("UNCLAIMED")) { PayoutsItemCancelRequest cancelRequest = new PayoutsItemCancelRequest(batchDetails.Items[0].PayoutItemId); HttpResponse cancelResponse = await TestHarness.client().Execute(cancelRequest); Assert.Equal(200, (int)cancelResponse.StatusCode); Assert.NotNull(cancelResponse.Result <PayoutItemResponse>()); } // Add your own checks here }
public async static Task <HttpResponse> CancelItem(string itemId, bool debug = false) { PayoutsItemCancelRequest request = new PayoutsItemCancelRequest(itemId); var cancelResponse = await PayPalClient.client().Execute(request); var result = cancelResponse.Result <PayoutItemResponse>(); if (debug) { Console.WriteLine("Batch: {0}", result.PayoutBatchId); Console.WriteLine("Item: {0}", result.PayoutItemId); Console.WriteLine("status: {0}", result.TransactionStatus); Console.WriteLine("Links:"); foreach (LinkDescription link in result.Links) { Console.WriteLine("\t{0}: {1}\tCall Type: {2}", link.Rel, link.Href, link.Method); } } return(cancelResponse); }
public async void TestPayoutsItemCancelRequestFailure() { PayoutsItemCancelRequest cancelRequest = new PayoutsItemCancelRequest("34234324"); try { HttpResponse cancelResponse = await TestHarness.client().Execute(cancelRequest); } catch (HttpException ex) { String errorString = ex.Message; var deserializedError = new Error(); var memoryStream = new MemoryStream(Encoding.UTF8.GetBytes(errorString)); var deserializer = new DataContractJsonSerializer(deserializedError.GetType()); deserializedError = deserializer.ReadObject(memoryStream) as Error; memoryStream.Close(); Assert.NotNull(deserializedError); Assert.NotNull(deserializedError.DebugId); Assert.NotNull(deserializedError.Details); Assert.NotNull(deserializedError.Message); Assert.Equal("The requested resource ID was not found", deserializedError.Message); Assert.Equal("INVALID_RESOURCE_ID", deserializedError.Name); } }