public void WebhookCreateAndGetTest() { try { var apiContext = TestingUtil.GetApiContext(); this.RecordConnectionDetails(); var webhook = WebhookTest.GetWebhook(); var url = "https://" + Guid.NewGuid().ToString() + ".com/paypal_webhooks"; webhook.url = url; var createdWebhook = webhook.Create(apiContext); this.RecordConnectionDetails(); Assert.IsNotNull(createdWebhook); Assert.IsTrue(!string.IsNullOrEmpty(createdWebhook.id)); var webhookId = createdWebhook.id; var retrievedWebhook = Webhook.Get(apiContext, webhookId); this.RecordConnectionDetails(); Assert.IsNotNull(retrievedWebhook); Assert.AreEqual(webhookId, retrievedWebhook.id); Assert.AreEqual(url, retrievedWebhook.url); // Cleanup retrievedWebhook.Delete(apiContext); this.RecordConnectionDetails(); } catch (ConnectionException) { this.RecordConnectionDetails(false); throw; } }
public void WebhookUpdateTest() { try { var apiContext = TestingUtil.GetApiContext(); this.RecordConnectionDetails(); var webhook = WebhookTest.GetWebhook(); webhook.url = "https://" + Guid.NewGuid().ToString() + ".com/paypal_webhooks"; var createdWebhook = webhook.Create(apiContext); this.RecordConnectionDetails(); var newUrl = "https://update.com/paypal_webhooks/" + Guid.NewGuid().ToString(); var newEventTypeName = "PAYMENT.SALE.REFUNDED"; var patchRequest = new PatchRequest { new Patch { op = "replace", path = "/url", value = newUrl }, new Patch { op = "replace", path = "/event_types", value = new List <WebhookEventType> { new WebhookEventType { name = newEventTypeName } } } }; var updatedWebhook = createdWebhook.Update(apiContext, patchRequest); this.RecordConnectionDetails(); Assert.IsNotNull(updatedWebhook); Assert.AreEqual(createdWebhook.id, updatedWebhook.id); Assert.AreEqual(newUrl, updatedWebhook.url); Assert.IsNotNull(updatedWebhook.event_types); Assert.AreEqual(1, updatedWebhook.event_types.Count); Assert.AreEqual(newEventTypeName, updatedWebhook.event_types[0].name); // Cleanup updatedWebhook.Delete(apiContext); this.RecordConnectionDetails(); } catch (ConnectionException) { this.RecordConnectionDetails(false); throw; } }
public void WebhookDeleteTest() { try { var apiContext = TestingUtil.GetApiContext(); this.RecordConnectionDetails(); var webhook = WebhookTest.GetWebhook(); webhook.url = "https://" + Guid.NewGuid().ToString() + ".com/paypal_webhooks"; var createdWebhook = webhook.Create(apiContext); this.RecordConnectionDetails(); createdWebhook.Delete(apiContext); this.RecordConnectionDetails(); Assert.AreEqual(204, (int)PayPalResource.LastResponseDetails.Value.StatusCode); } catch (ConnectionException) { this.RecordConnectionDetails(false); throw; } }