feat: adds endpoints 'client contacts' and 'contacts' and integration tests for all existing endpoints.
This commit is contained in:
89
tests/PaymoTasksApiTests.cs
Normal file
89
tests/PaymoTasksApiTests.cs
Normal file
@@ -0,0 +1,89 @@
|
||||
using System.Linq;
|
||||
using Novaloop.PaymoApi.Tasks;
|
||||
using Novaloop.PaymoApi.Tasks.Models;
|
||||
using Xunit;
|
||||
using Xunit.Abstractions;
|
||||
|
||||
namespace Novaloop.PaymoApi.Tests
|
||||
{
|
||||
public class PaymoTasksApiTests
|
||||
{
|
||||
private readonly ITestOutputHelper _testOutputHelper;
|
||||
private readonly PaymoTasksApi _paymoTasksApi;
|
||||
private readonly PaymoTask _testTask;
|
||||
|
||||
public PaymoTasksApiTests(ITestOutputHelper testOutputHelper)
|
||||
{
|
||||
_testOutputHelper = testOutputHelper;
|
||||
_paymoTasksApi = new PaymoTasksApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions());
|
||||
_testTask = new PaymoTask
|
||||
{
|
||||
Name = "Testtask",
|
||||
Description = "Just a little task"
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
[Fact]
|
||||
public async void GetTasks()
|
||||
{
|
||||
// Arrange
|
||||
|
||||
// Act
|
||||
var tasks = (await _paymoTasksApi.GetTasks()).ToList();
|
||||
|
||||
// Assert
|
||||
Assert.NotEmpty(tasks);
|
||||
_testOutputHelper.WriteLine(string.Join(",", tasks));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async void GetTask()
|
||||
{
|
||||
// Arrange
|
||||
|
||||
// Act
|
||||
var tasks = (await _paymoTasksApi.GetTasks()).ToList();
|
||||
var task = await _paymoTasksApi.GetTask(tasks.First().Id);
|
||||
|
||||
// Assert
|
||||
Assert.NotNull(task);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async void CreateTask()
|
||||
{
|
||||
// Arrange
|
||||
var existingTaskListId = (await _paymoTasksApi.GetTasks()).First().TasklistId;
|
||||
|
||||
// Act
|
||||
_testTask.TasklistId = existingTaskListId;
|
||||
var createdTask = await _paymoTasksApi.CreateTask(_testTask);
|
||||
var task = await _paymoTasksApi.GetTask(createdTask.Id);
|
||||
|
||||
// Assert
|
||||
Assert.Equal(_testTask.Name, task.Name);
|
||||
Assert.Equal(_testTask.Description, task.Description);
|
||||
|
||||
// Cleanup
|
||||
await _paymoTasksApi.DeleteTask(createdTask.Id);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async void DeleteTask()
|
||||
{
|
||||
// Arrange
|
||||
var existingTaskListId = (await _paymoTasksApi.GetTasks()).First().TasklistId;
|
||||
_testTask.TasklistId = existingTaskListId;
|
||||
var createdTask = await _paymoTasksApi.CreateTask(_testTask);
|
||||
|
||||
// Act
|
||||
await _paymoTasksApi.DeleteTask(createdTask.Id);
|
||||
var tasks = (await _paymoTasksApi.GetTasks()).ToList();
|
||||
|
||||
|
||||
// Assert
|
||||
Assert.Empty(tasks.Where(c => c.Id == createdTask.Id));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user