public async Task ThrowIfNull_WorksWithNullable_NoValue() { var responseString = "{\"type\":\"task\",\"id\":\"1874102965\"}"; Handler.Setup(h => h.ExecuteAsync <BoxTask>(It.IsAny <IBoxRequest>())) .Returns(Task.FromResult <IBoxResponse <BoxTask> >(new BoxResponse <BoxTask>() { Status = ResponseStatus.Success, ContentString = responseString })); var taskRequest = new BoxTaskCreateRequest { Item = new BoxRequestEntity { Id = "1234" } }; try { BoxTask task = await _tasksManager.CreateTaskAsync(taskRequest); } catch (ArgumentNullException ex) { Assert.AreEqual("taskCreateRequest.Item.Type", ex.ParamName); return; } Assert.Fail("Exception should have been thrown"); }
public async Task GetFileTasks_ValidResponse_ValidTasks() { /*** Arrange ***/ string responseString = "{\"total_count\": 1, \"entries\": [{\"type\": \"task\", \"id\": \"1786931\",\"item\": {\"type\": \"file\",\"id\": \"7026335894\", \"sequence_id\": \"6\", \"etag\": \"6\", \"sha1\": \"81cc829fb8366fcfc108aa6c5a9bde01a6a10c16\",\"name\": \"API - Persist On-Behalf-Of information.docx\" }, \"due_at\": null } ] }"; _handler.Setup(h => h.ExecuteAsync <BoxCollection <BoxTask> >(It.IsAny <IBoxRequest>())) .Returns(Task.FromResult <IBoxResponse <BoxCollection <BoxTask> > >(new BoxResponse <BoxCollection <BoxTask> >() { Status = ResponseStatus.Success, ContentString = responseString })); /*** Act ***/ BoxCollection <BoxTask> tasks = await _filesManager.GetFileTasks("fakeId"); /*** Assert ***/ BoxTask task = tasks.Entries.FirstOrDefault(); /*** Assert ***/ Assert.AreEqual(1, tasks.TotalCount); Assert.AreEqual("1786931", task.Id); Assert.AreEqual("task", task.Type); Assert.AreEqual("API - Persist On-Behalf-Of information.docx", task.Item.Name); Assert.AreEqual("7026335894", task.Item.Id); }
public async Task GetTask_ValidResponse() { /*** Arrange ***/ var responseString = @"{ ""type"": ""task"", ""id"": ""1839355"", ""item"": { ""type"": ""file"", ""id"": ""7287087200"", ""sequence_id"": ""0"", ""etag"": ""0"", ""sha1"": ""0bbd79a105c504f99573e3799756debba4c760cd"", ""name"": ""box-logo.png"" }, ""due_at"": ""2014-04-03T11:09:43-07:00"", ""action"": ""review"", ""message"": ""REVIEW PLZ K THX"", ""task_assignment_collection"": { ""total_count"": 0, ""entries"": [] }, ""is_completed"": false, ""created_by"": { ""type"": ""user"", ""id"": ""11993747"", ""name"": ""sean"", ""login"": ""*****@*****.**"" }, ""created_at"": ""2013-04-03T11:12:54-07:00"" }"; IBoxRequest boxRequest = null; var tasksUri = new Uri(Constants.TasksEndpointString); Config.SetupGet(x => x.TasksEndpointUri).Returns(tasksUri); Handler.Setup(h => h.ExecuteAsync <BoxTask>(It.IsAny <IBoxRequest>())) .Returns(Task.FromResult <IBoxResponse <BoxTask> >(new BoxResponse <BoxTask>() { Status = ResponseStatus.Success, ContentString = responseString })) .Callback <IBoxRequest>(r => boxRequest = r); BoxTask result = await _tasksManager.GetTaskAsync("1839355"); /*** Assert ***/ //Request check Assert.IsNotNull(boxRequest); Assert.AreEqual(RequestMethod.Get, boxRequest.Method); Assert.AreEqual(tasksUri + "1839355", boxRequest.AbsoluteUri.AbsoluteUri); //Response check Assert.AreEqual("1839355", result.Id); Assert.AreEqual("task", result.Type); Assert.AreEqual("7287087200", result.Item.Id); Assert.AreEqual("file", result.Item.Type); Assert.AreEqual("0", result.Item.ETag); Assert.AreEqual("REVIEW PLZ K THX", result.Message); Assert.AreEqual(false, result.IsCompleted); Assert.AreEqual("11993747", result.CreatedBy.Id); Assert.AreEqual("*****@*****.**", result.CreatedBy.Login); Assert.AreEqual(0, result.TaskAssignments.TotalCount); }
public async Task CreateTask_WithCompletionRule() { /*** Arrange ***/ var responseString = @"{ ""type"": ""task"", ""id"": ""1839355"", ""item"": { ""type"": ""file"", ""id"": ""7287087200"", ""sequence_id"": ""0"", ""etag"": ""0"", ""sha1"": ""0bbd79a105c504f99573e3799756debba4c760cd"", ""name"": ""box-logo.png"" }, ""due_at"": ""2014-04-03T11:09:43-07:00"", ""action"": ""review"", ""message"": ""REVIEW PLZ K THX"", ""task_assignment_collection"": { ""total_count"": 0, ""entries"": [] }, ""is_completed"": false, ""created_by"": { ""type"": ""user"", ""id"": ""11993747"", ""name"": ""sean"", ""login"": ""*****@*****.**"" }, ""created_at"": ""2013-04-03T11:12:54-07:00"", ""completion_rule"": ""any_assignee"" }"; IBoxRequest boxRequest = null; var tasksUri = new Uri(Constants.TasksEndpointString); Config.SetupGet(x => x.TasksEndpointUri).Returns(tasksUri); Handler.Setup(h => h.ExecuteAsync <BoxTask>(It.IsAny <IBoxRequest>())) .Returns(Task.FromResult <IBoxResponse <BoxTask> >(new BoxResponse <BoxTask>() { Status = ResponseStatus.Success, ContentString = responseString })) .Callback <IBoxRequest>(r => boxRequest = r); /*** Act ***/ var taskCreateRequest = new BoxTaskCreateRequest() { Item = new BoxRequestEntity() { Id = "7287087200", Type = BoxType.file }, Message = "REVIEW PLZ K THX", CompletionRule = BoxCompletionRule.any_assignee }; BoxTask result = await _tasksManager.CreateTaskAsync(taskCreateRequest); /*** Assert ***/ //Request check Assert.IsNotNull(boxRequest); Assert.AreEqual(RequestMethod.Post, boxRequest.Method); Assert.AreEqual(tasksUri, boxRequest.AbsoluteUri.AbsoluteUri); BoxTaskCreateRequest payload = JsonConvert.DeserializeObject <BoxTaskCreateRequest>(boxRequest.Payload); Assert.AreEqual(taskCreateRequest.Item.Id, payload.Item.Id); Assert.AreEqual(taskCreateRequest.Item.Type, payload.Item.Type); Assert.AreEqual(taskCreateRequest.Message, payload.Message); Assert.AreEqual(taskCreateRequest.CompletionRule, payload.CompletionRule); Assert.IsTrue(boxRequest.Payload.ContainsKeyValue("completion_rule", "any_assignee")); //Response check Assert.AreEqual(BoxCompletionRule.any_assignee, result.CompletionRule); }
protected virtual void PrintTask(BoxTask task) { Reporter.WriteInformation($"Task ID: {task.Id}"); Reporter.WriteInformation($"Task Action: {task.Action}"); Reporter.WriteInformation($"Task Message: {task.Message}"); }