public async Task TestCompletedQueryAssignments() { var assignment = CreateSimpleAssignmentNew(); var assignmentId = await AssignmentUtils.CreateAssignment(assignment); var assignmentPatch = new AssignmentPatch(); //When we set isComplete to true, Skylight will set the completedBy field to our integration id assignmentPatch.Add("completedAt", DateTime.Now.ToString("yyyy-MM-dd'T'HH:mm:ss.fffzzz")); assignmentPatch.Add("isComplete", true); assignmentPatch.Add("completionDetails", "Completed by SDK"); var assignmentPatchRequest = new PatchAssignmentRequest(assignmentPatch, assignmentId); await SkyManager.ApiClient.ExecuteRequestAsync(assignmentPatchRequest); var getAssignmentsRequest = new GetAssignmentsRequest(); getAssignmentsRequest.AddAllRealmQuery(true); getAssignmentsRequest.AddCompletedQuery(true); getAssignmentsRequest.AddCompletedByQuery(SkyManager.IntegrationId); //As noted above, this assignment will have been completed by the integration id var getAssignmentsResponse = await SkyManager.ApiClient.ExecuteRequestAsync(getAssignmentsRequest); var queriedAssignments = getAssignmentsResponse.Content; //There should exist at least one assignment in the realm, as we just made one Assert.InRange(queriedAssignments.Count, 1, Int16.MaxValue); var returnedAssignment = queriedAssignments.First(); Assert.NotNull(returnedAssignment.CompletedAt); Assert.Equal(returnedAssignment.CompletedBy, SkyManager.IntegrationId); Assert.NotNull(returnedAssignment.CompletionDetails); Assert.True(returnedAssignment.IsComplete); await AssignmentUtils.DeleteAssignment(assignmentId); }
public async Task TestAllRealmQueryAssignments() { var assignment = CreateSimpleAssignmentNew(); var assignmentId = await AssignmentUtils.CreateAssignment(assignment); var getAssignmentsRequest = new GetAssignmentsRequest(); getAssignmentsRequest.AddAllRealmQuery(true); var getAssignmentsResponse = await SkyManager.ApiClient.ExecuteRequestAsync(getAssignmentsRequest); var queriedAssignments = getAssignmentsResponse.Content; //There should exist at least one assignment in the realm, as we just made one Assert.InRange(queriedAssignments.Count, 1, Int16.MaxValue); await AssignmentUtils.DeleteAssignment(assignmentId); }
public async Task TestArchivedQueryAssignments() { var assignment = CreateSimpleAssignmentNew(); var assignmentId = await AssignmentUtils.CreateAssignment(assignment); await AssignmentUtils.DeleteAssignment(assignmentId, false); //false sets the purge parameter to false, which means the assignment will be archived var getAssignmentsRequest = new GetAssignmentsRequest(); getAssignmentsRequest.AddAllRealmQuery(true); getAssignmentsRequest.AddArchivedQuery(true); getAssignmentsRequest.AddArchivedOnlyQuery(true); var getAssignmentsResponse = await SkyManager.ApiClient.ExecuteRequestAsync(getAssignmentsRequest); var queriedAssignments = getAssignmentsResponse.Content; //There should exist at least one assignment in the realm, as we just made one Assert.InRange(queriedAssignments.Count, 1, Int16.MaxValue); await AssignmentUtils.DeleteAssignment(assignmentId); //Purge this assignment to clean up }
public async Task TestWorkflowIdQueryAssignments() { var assignment = CreateSimpleAssignmentNew(); assignment.WorkflowId = "";//This is the equivalent of not specifying a workflow id (the default) var assignmentId = await AssignmentUtils.CreateAssignment(assignment); var returnedAssignment = await AssignmentUtils.GetAssignment(assignmentId); var getAssignmentsRequest = new GetAssignmentsRequest(); getAssignmentsRequest.AddAllRealmQuery(true); getAssignmentsRequest.AddWorkflowIdQuery(returnedAssignment.WorkflowId); var getAssignmentsResponse = await SkyManager.ApiClient.ExecuteRequestAsync(getAssignmentsRequest); var queriedAssignments = getAssignmentsResponse.Content; //There should exist at least one assignment in the realm, as we just made one Assert.InRange(queriedAssignments.Count, 1, Int16.MaxValue); Assert.Equal(assignment.WorkflowId, returnedAssignment.WorkflowId); //No workflow id should be assigned, so these should be empty await AssignmentUtils.DeleteAssignment(assignmentId); }
public async Task TestUpdatedQueryAssignments() { var assignment = CreateSimpleAssignmentNew(); var assignmentId = await AssignmentUtils.CreateAssignment(assignment); var assignmentUpdate = new AssignmentUpdate() { Name = new Guid().ToString() , AssignedTo = TestUserId , CompletedAt = null , CompletedBy = "" , CompletionDetails = "" , ConfirmCaptures = false , Description = "" , Fade = new Fade() , IntegrationId = SkyManager.IntegrationId , IsComplete = false , RootSequence = AssignmentUtils.ROOT_SEQUENCE_ID , WorkflowId = "" }; var assignmentUpdateRequest = new UpdateAssignmentRequest(assignmentUpdate, assignmentId); await SkyManager.ApiClient.ExecuteRequestAsync(assignmentUpdateRequest); var getAssignmentsRequest = new GetAssignmentsRequest(); getAssignmentsRequest.AddAllRealmQuery(true); getAssignmentsRequest.AddUpdatedByQuery(SkyManager.IntegrationId); //As noted above, this assignment will have been updated by the integration id var getAssignmentsResponse = await SkyManager.ApiClient.ExecuteRequestAsync(getAssignmentsRequest); var queriedAssignments = getAssignmentsResponse.Content; //There should exist at least one assignment in the realm, as we just made one Assert.InRange(queriedAssignments.Count, 1, Int16.MaxValue); await AssignmentUtils.DeleteAssignment(assignmentId); }