public void CreateAsync_NewWebHookNull_ThrowArgumentNullException()
        {
            WrikeWebHook newWebHook = null;

            var ex = Assert.ThrowsAsync <ArgumentNullException>(() => TestConstants.WrikeClient.WebHooks.CreateAsync(newWebHook));

            Assert.AreEqual("newWebHook", ex.ParamName);
        }
        public void CreateAsync_ShouldAddNewwebHookWithUrlToAccount()
        {
            var newWebHook = new WrikeWebHook(TestWebHookAddress);

            var createdWebHook = WrikeClientFactory.GetWrikeClient().WebHooks.CreateAsync(newWebHook).Result;

            Assert.IsNotNull(createdWebHook);
            Assert.AreEqual(newWebHook.HookUrl, createdWebHook.HookUrl);
            Assert.AreEqual(newWebHook.Status, createdWebHook.Status);
        }
        public void UpdateAsync_ShouldUpdateWebHookStatus()
        {
            var newWebHook = new WrikeWebHook(TestWebHookAddress, TestFolderId);

            newWebHook = WrikeClientFactory.GetWrikeClient().WebHooks.CreateAsync(newWebHook).Result;

            var expectedStatus = WrikeWebHookStatus.Suspended;
            var updatedWebHook = WrikeClientFactory.GetWrikeClient().WebHooks.UpdateAsync(newWebHook.Id, expectedStatus).Result;

            Assert.IsNotNull(updatedWebHook);
            Assert.AreEqual(expectedStatus, updatedWebHook.Status);
        }
        public void DeleteAsync_ShouldDeleteNewGroup()
        {
            var newWebHook = new WrikeWebHook(TestWebHookAddress, TestFolderId);

            newWebHook = WrikeClientFactory.GetWrikeClient().WebHooks.CreateAsync(newWebHook).Result;

            WrikeClientFactory.GetWrikeClient().WebHooks.DeleteAsync(newWebHook.Id).Wait();

            var webHooks         = WrikeClientFactory.GetWrikeClient().Groups.GetAsync().Result;
            var isWebHookDeleted = !webHooks.Any(wh => wh.Id == newWebHook.Id);

            Assert.IsTrue(isWebHookDeleted);
        }
Example #5
0
        public static async Task Run(WrikeClient client)
        {
            var webhooks = await client.WebHooks.GetAsync();

            //var webhooks = await client.WebHooks.GetAsync(new List<string> { "webHookId", "webHookId"});


            var newWebHook = new WrikeWebHook(TestWebHookAddress);

            newWebHook = await client.WebHooks.CreateAsync(newWebHook);

            //var newWebHook = new WrikeWebHook(TestWebHookAddress, "folderID");
            //newWebHook = await client.WebHooks.CreateAsync(newWebHook);


            newWebHook = await client.WebHooks.UpdateAsync(newWebHook.Id, WrikeWebHookStatus.Suspended);

            await client.WebHooks.DeleteAsync(newWebHook.Id);
        }
Example #6
0
        async Task <WrikeWebHook> IWrikeWebHooksClient.CreateAsync(WrikeWebHook newWebHook)
        {
            if (newWebHook == null)
            {
                throw new ArgumentNullException(nameof(newWebHook));
            }

            string requestUri = "webhooks";

            if (!string.IsNullOrWhiteSpace(newWebHook.FolderId))
            {
                requestUri = $"folders/{newWebHook.FolderId}/webhooks";
            }

            var postDataBuilder = new WrikeFormUrlEncodedContentBuilder()
                                  .AddParameter("hookUrl", newWebHook.HookUrl);


            var response = await SendRequest <WrikeWebHook>(requestUri,
                                                            HttpMethods.Post, postDataBuilder.GetContent()).ConfigureAwait(false);

            return(GetReponseDataFirstItem(response));
        }