diff --git a/src/ClientContacts/ClientContactsApi.cs b/src/ClientContacts/ClientContactsApi.cs deleted file mode 100644 index 12f8bfd..0000000 --- a/src/ClientContacts/ClientContactsApi.cs +++ /dev/null @@ -1,50 +0,0 @@ -using System.Collections.Generic; -using System.Dynamic; -using System.Linq; -using System.Threading.Tasks; -using Novaloop.PaymoApi.ClientContacts.Models; -using Novaloop.PaymoApi.Shared; - -namespace Novaloop.PaymoApi.ClientContacts -{ - public class ClientContactsApi : IClientContactsApi - { - private readonly IBaseApi _baseApi; - - public ClientContactsApi(IBaseApi baseApi) - { - _baseApi = baseApi; - _baseApi.ResourceUri = "clientcontacts"; - } - - /// - public async Task> GetClientContacts() - { - return (await _baseApi.GetAll()).ClientContacts; - } - - /// - public async Task GetClientContact(int clientContactId) - { - return (await _baseApi.Get(clientContactId)).ClientContacts.Single(); - } - - /// - public async Task CreateClientContact(ClientContact clientContact) - { - return (await _baseApi.Create(clientContact)).ClientContacts.Single(); - } - - /// - public async Task DeleteClientContact(int clientContactId) - { - await _baseApi.Delete(clientContactId); - } - - /// - public async Task UpdateClientContact(ExpandoObject clientContact, int clientContactId) - { - await _baseApi.Update(clientContact, clientContactId); - } - } -} \ No newline at end of file diff --git a/src/ClientContacts/IClientContactsApi.cs b/src/ClientContacts/IPaymoClientContactsApi.cs similarity index 80% rename from src/ClientContacts/IClientContactsApi.cs rename to src/ClientContacts/IPaymoClientContactsApi.cs index f018dfc..705485b 100644 --- a/src/ClientContacts/IClientContactsApi.cs +++ b/src/ClientContacts/IPaymoClientContactsApi.cs @@ -5,24 +5,24 @@ using Novaloop.PaymoApi.ClientContacts.Models; namespace Novaloop.PaymoApi.ClientContacts { - public interface IClientContactsApi + public interface IPaymoClientContactsApi { /// /// Receive all existing client contacts /// - Task> GetClientContacts(); + Task> GetClientContacts(); /// /// Retrieve an existing client contact by id /// /// id of the contact /// - Task GetClientContact(int clientContactId); + Task GetClientContact(int clientContactId); /// /// Create a new client contact /// - Task CreateClientContact(ClientContact clientContact); + Task CreateClientContact(PaymoClientContact paymoClientContact); /// /// Delete a client contact diff --git a/src/ClientContacts/Models/ClientContact.cs b/src/ClientContacts/Models/PaymoClientContact.cs similarity index 95% rename from src/ClientContacts/Models/ClientContact.cs rename to src/ClientContacts/Models/PaymoClientContact.cs index 08f8ebb..5c29215 100644 --- a/src/ClientContacts/Models/ClientContact.cs +++ b/src/ClientContacts/Models/PaymoClientContact.cs @@ -3,7 +3,7 @@ using Novaloop.PaymoApi.Shared; namespace Novaloop.PaymoApi.ClientContacts.Models { - public class ClientContact : BaseModel + public class PaymoClientContact : PaymoBaseModel { [JsonProperty("client_id")] public int ClientId { get; set; } diff --git a/src/ClientContacts/Models/ClientContactsResponse.cs b/src/ClientContacts/Models/PaymoClientContactsResponse.cs similarity index 57% rename from src/ClientContacts/Models/ClientContactsResponse.cs rename to src/ClientContacts/Models/PaymoClientContactsResponse.cs index 524fa34..91258f7 100644 --- a/src/ClientContacts/Models/ClientContactsResponse.cs +++ b/src/ClientContacts/Models/PaymoClientContactsResponse.cs @@ -3,9 +3,9 @@ using Newtonsoft.Json; namespace Novaloop.PaymoApi.ClientContacts.Models { - public class ClientContactsResponse + public class PaymoClientContactsResponse { [JsonProperty("clientcontacts")] - public IEnumerable ClientContacts { get; set; } + public IEnumerable ClientContacts { get; set; } } } \ No newline at end of file diff --git a/src/ClientContacts/PaymoClientContactsApi.cs b/src/ClientContacts/PaymoClientContactsApi.cs new file mode 100644 index 0000000..e6a9652 --- /dev/null +++ b/src/ClientContacts/PaymoClientContactsApi.cs @@ -0,0 +1,50 @@ +using System.Collections.Generic; +using System.Dynamic; +using System.Linq; +using System.Threading.Tasks; +using Novaloop.PaymoApi.ClientContacts.Models; +using Novaloop.PaymoApi.Shared; + +namespace Novaloop.PaymoApi.ClientContacts +{ + public class PaymoClientContactsApi : IPaymoClientContactsApi + { + private readonly IPaymoBaseApi _paymoBaseApi; + + public PaymoClientContactsApi(IPaymoBaseApi paymoBaseApi) + { + _paymoBaseApi = paymoBaseApi; + _paymoBaseApi.ResourceUri = "clientcontacts"; + } + + /// + public async Task> GetClientContacts() + { + return (await _paymoBaseApi.GetAll()).ClientContacts; + } + + /// + public async Task GetClientContact(int clientContactId) + { + return (await _paymoBaseApi.Get(clientContactId)).ClientContacts.Single(); + } + + /// + public async Task CreateClientContact(PaymoClientContact paymoClientContact) + { + return (await _paymoBaseApi.Create(paymoClientContact)).ClientContacts.Single(); + } + + /// + public async Task DeleteClientContact(int clientContactId) + { + await _paymoBaseApi.Delete(clientContactId); + } + + /// + public async Task UpdateClientContact(ExpandoObject clientContact, int clientContactId) + { + await _paymoBaseApi.Update(clientContact, clientContactId); + } + } +} \ No newline at end of file diff --git a/src/Clients/ClientsApi.cs b/src/Clients/ClientsApi.cs deleted file mode 100644 index d7b40cb..0000000 --- a/src/Clients/ClientsApi.cs +++ /dev/null @@ -1,50 +0,0 @@ -using System.Collections.Generic; -using System.Dynamic; -using System.Linq; -using System.Threading.Tasks; -using Novaloop.PaymoApi.Clients.Models; -using Novaloop.PaymoApi.Shared; - -namespace Novaloop.PaymoApi.Clients -{ - public class ClientsApi : IClientsApi - { - private readonly IBaseApi _baseApi; - - public ClientsApi(IBaseApi baseApi) - { - _baseApi = baseApi; - _baseApi.ResourceUri = "clients"; - } - - /// - public async Task> GetClients() - { - return (await _baseApi.GetAll()).Clients; - } - - /// - public async Task GetClient(int clientId) - { - return (await _baseApi.Get(clientId)).Clients.Single(); - } - - /// - public async Task CreateClient(Client client) - { - return (await _baseApi.Create(client)).Clients.Single(); - } - - /// - public async Task DeleteClient(int clientId) - { - await _baseApi.Delete(clientId); - } - - /// - public async Task UpdateClient(ExpandoObject client, int clientId) - { - await _baseApi.Update(client, clientId); - } - } -} \ No newline at end of file diff --git a/src/Clients/IClientsApi.cs b/src/Clients/IPaymoClientsApi.cs similarity index 82% rename from src/Clients/IClientsApi.cs rename to src/Clients/IPaymoClientsApi.cs index 3b1b765..7146e76 100644 --- a/src/Clients/IClientsApi.cs +++ b/src/Clients/IPaymoClientsApi.cs @@ -5,24 +5,24 @@ using Novaloop.PaymoApi.Clients.Models; namespace Novaloop.PaymoApi.Clients { - public interface IClientsApi + public interface IPaymoClientsApi { /// /// Receive all existing clients /// - Task> GetClients(); + Task> GetClients(); /// /// Retrieve an existing client by id /// /// id of the contact /// - Task GetClient(int clientId); + Task GetClient(int clientId); /// /// Create a new client /// - Task CreateClient(Client client); + Task CreateClient(PaymoClient paymoClient); /// /// Delete a client diff --git a/src/Clients/Models/Client.cs b/src/Clients/Models/PaymoClient.cs similarity index 96% rename from src/Clients/Models/Client.cs rename to src/Clients/Models/PaymoClient.cs index 828cc95..6ec04dc 100644 --- a/src/Clients/Models/Client.cs +++ b/src/Clients/Models/PaymoClient.cs @@ -3,7 +3,7 @@ using Novaloop.PaymoApi.Shared; namespace Novaloop.PaymoApi.Clients.Models { - public class Client : BaseModel + public class PaymoClient : PaymoBaseModel { [JsonProperty("name")] public string Name { get; set; } diff --git a/src/Clients/Models/ClientsResponse.cs b/src/Clients/Models/PaymoClientsResponse.cs similarity index 60% rename from src/Clients/Models/ClientsResponse.cs rename to src/Clients/Models/PaymoClientsResponse.cs index e391b9a..deab4a5 100644 --- a/src/Clients/Models/ClientsResponse.cs +++ b/src/Clients/Models/PaymoClientsResponse.cs @@ -3,9 +3,9 @@ using Newtonsoft.Json; namespace Novaloop.PaymoApi.Clients.Models { - public class ClientsResponse + public class PaymoClientsResponse { [JsonProperty("clients")] - public IEnumerable Clients { get; set; } + public IEnumerable Clients { get; set; } } } \ No newline at end of file diff --git a/src/Clients/PaymoPaymoClientsApi.cs b/src/Clients/PaymoPaymoClientsApi.cs new file mode 100644 index 0000000..73d95e4 --- /dev/null +++ b/src/Clients/PaymoPaymoClientsApi.cs @@ -0,0 +1,50 @@ +using System.Collections.Generic; +using System.Dynamic; +using System.Linq; +using System.Threading.Tasks; +using Novaloop.PaymoApi.Clients.Models; +using Novaloop.PaymoApi.Shared; + +namespace Novaloop.PaymoApi.Clients +{ + public class PaymoPaymoClientsApi : IPaymoClientsApi + { + private readonly IPaymoBaseApi _paymoBaseApi; + + public PaymoPaymoClientsApi(IPaymoBaseApi paymoBaseApi) + { + _paymoBaseApi = paymoBaseApi; + _paymoBaseApi.ResourceUri = "clients"; + } + + /// + public async Task> GetClients() + { + return (await _paymoBaseApi.GetAll()).Clients; + } + + /// + public async Task GetClient(int clientId) + { + return (await _paymoBaseApi.Get(clientId)).Clients.Single(); + } + + /// + public async Task CreateClient(PaymoClient paymoClient) + { + return (await _paymoBaseApi.Create(paymoClient)).Clients.Single(); + } + + /// + public async Task DeleteClient(int clientId) + { + await _paymoBaseApi.Delete(clientId); + } + + /// + public async Task UpdateClient(ExpandoObject client, int clientId) + { + await _paymoBaseApi.Update(client, clientId); + } + } +} \ No newline at end of file diff --git a/src/Exceptions/ApiException.cs b/src/Exceptions/PaymoApiException.cs similarity index 52% rename from src/Exceptions/ApiException.cs rename to src/Exceptions/PaymoApiException.cs index d650db6..f0f7fb8 100644 --- a/src/Exceptions/ApiException.cs +++ b/src/Exceptions/PaymoApiException.cs @@ -2,9 +2,9 @@ using System; namespace Novaloop.PaymoApi.Exceptions { - public class ApiException : Exception + public class PaymoApiException : Exception { - public ApiException(int statusCode, string message) : base($"[{statusCode}]: {message})") + public PaymoApiException(int statusCode, string message) : base($"[{statusCode}]: {message})") { StatusCode = statusCode; } diff --git a/src/Extensions/HttpResponseMessageExtensions.cs b/src/Extensions/HttpResponseMessageExtensions.cs index ec9b6e3..84cf220 100644 --- a/src/Extensions/HttpResponseMessageExtensions.cs +++ b/src/Extensions/HttpResponseMessageExtensions.cs @@ -10,7 +10,7 @@ namespace Novaloop.PaymoApi.Extensions { if (!response.IsSuccessStatusCode) { - throw new ApiException((int) response.StatusCode, await response.Content.ReadAsStringAsync()); + throw new PaymoApiException((int) response.StatusCode, await response.Content.ReadAsStringAsync()); } } } diff --git a/src/Extensions/PaymoApiExtensions.cs b/src/Extensions/PaymoApiExtensions.cs index a647b7e..056e33d 100644 --- a/src/Extensions/PaymoApiExtensions.cs +++ b/src/Extensions/PaymoApiExtensions.cs @@ -13,27 +13,27 @@ namespace Novaloop.PaymoApi.Extensions { public static class PaymoApiExtensions { - public static IServiceCollection AddPaymoApi(this IServiceCollection services, Action options) + public static IServiceCollection AddPaymoApi(this IServiceCollection services, Action options) { services.Configure(options); - var resolvedOptions = (IOptions) services.BuildServiceProvider().GetService(typeof(IOptions)); - services.AddHttpClient(client => { client.BaseAddress = new Uri(resolvedOptions.Value.BaseUrl); }) - .AddHttpMessageHandler(s => s.GetService()); + var resolvedOptions = (IOptions) services.BuildServiceProvider().GetService(typeof(IOptions)); + services.AddHttpClient(client => { client.BaseAddress = new Uri(resolvedOptions.Value.BaseUrl); }) + .AddHttpMessageHandler(s => s.GetService()); // ClientContacts - services.AddTransient, BaseApi>(); - services.AddTransient(); + services.AddTransient, PaymoBaseApi>(); + services.AddTransient(); // Tasks - services.AddTransient, BaseApi>(); - services.AddTransient(); + services.AddTransient, PaymoBaseApi>(); + services.AddTransient(); // Contacts - services.AddTransient, BaseApi>(); - services.AddTransient(); + services.AddTransient, PaymoBaseApi>(); + services.AddTransient(); // Shared - services.AddTransient(); + services.AddTransient(); return services; } diff --git a/src/Extensions/ApiOptions.cs b/src/Extensions/PaymoApiOptions.cs similarity index 84% rename from src/Extensions/ApiOptions.cs rename to src/Extensions/PaymoApiOptions.cs index ba19c92..81f66fe 100644 --- a/src/Extensions/ApiOptions.cs +++ b/src/Extensions/PaymoApiOptions.cs @@ -1,6 +1,6 @@ namespace Novaloop.PaymoApi.Extensions { - public class ApiOptions + public class PaymoApiOptions { public string BaseUrl { get; set; } = "https://app.paymoapp.com/"; public string ApiToken { get; set; } diff --git a/src/Shared/IBaseApi.cs b/src/Shared/IPaymoBaseApi.cs similarity index 94% rename from src/Shared/IBaseApi.cs rename to src/Shared/IPaymoBaseApi.cs index 842e55a..44f4daf 100644 --- a/src/Shared/IBaseApi.cs +++ b/src/Shared/IPaymoBaseApi.cs @@ -3,7 +3,7 @@ using System.Threading.Tasks; namespace Novaloop.PaymoApi.Shared { - public interface IBaseApi + public interface IPaymoBaseApi { string ResourceUri { get; set; } diff --git a/src/Shared/BaseApi.cs b/src/Shared/PaymoBaseApi.cs similarity index 91% rename from src/Shared/BaseApi.cs rename to src/Shared/PaymoBaseApi.cs index 11d1106..f4f2846 100644 --- a/src/Shared/BaseApi.cs +++ b/src/Shared/PaymoBaseApi.cs @@ -9,16 +9,16 @@ using Novaloop.PaymoApi.Extensions; namespace Novaloop.PaymoApi.Shared { - public class BaseApi : IBaseApi + public class PaymoBaseApi : IPaymoBaseApi { public string ResourceUri { get; set; } - private readonly ApiOptions _options; + private readonly PaymoApiOptions _options; private readonly HttpClient _client; - public BaseApi(ApiClient apiClient, IOptions options) + public PaymoBaseApi(PaymoPaymoIApiClient paymoPaymoIApiClient, IOptions options) { _options = options.Value; - _client = apiClient.Client; + _client = paymoPaymoIApiClient.Client; } /// diff --git a/src/Shared/BaseModel.cs b/src/Shared/PaymoBaseModel.cs similarity index 86% rename from src/Shared/BaseModel.cs rename to src/Shared/PaymoBaseModel.cs index 501f3a5..a531132 100644 --- a/src/Shared/BaseModel.cs +++ b/src/Shared/PaymoBaseModel.cs @@ -2,7 +2,7 @@ using System; namespace Novaloop.PaymoApi.Shared { - public class BaseModel + public class PaymoBaseModel { public int Id { get; set; } public DateTime CreatedOn { get; set; } diff --git a/src/Shared/IApiClient.cs b/src/Shared/PaymoIApiClient.cs similarity index 57% rename from src/Shared/IApiClient.cs rename to src/Shared/PaymoIApiClient.cs index c18bcab..981c32b 100644 --- a/src/Shared/IApiClient.cs +++ b/src/Shared/PaymoIApiClient.cs @@ -1,6 +1,6 @@ namespace Novaloop.PaymoApi.Shared { - public interface IApiClient + public interface PaymoIApiClient { } } \ No newline at end of file diff --git a/src/Shared/LoggingHandler.cs b/src/Shared/PaymoLoggingHandler.cs similarity index 77% rename from src/Shared/LoggingHandler.cs rename to src/Shared/PaymoLoggingHandler.cs index 7015757..ed1872f 100644 --- a/src/Shared/LoggingHandler.cs +++ b/src/Shared/PaymoLoggingHandler.cs @@ -5,16 +5,16 @@ using Microsoft.Extensions.Logging; namespace Novaloop.PaymoApi.Shared { - public class LoggingHandler : DelegatingHandler + public class PaymoLoggingHandler : DelegatingHandler { - private readonly ILogger _logger; + private readonly ILogger _logger; - public LoggingHandler(ILogger logger) + public PaymoLoggingHandler(ILogger logger) { _logger = logger; } - public LoggingHandler(HttpMessageHandler innerHandler, ILogger logger) + public PaymoLoggingHandler(HttpMessageHandler innerHandler, ILogger logger) : base(innerHandler) { _logger = logger; diff --git a/src/Shared/ApiClient.cs b/src/Shared/PaymoPaymoIApiClient.cs similarity index 59% rename from src/Shared/ApiClient.cs rename to src/Shared/PaymoPaymoIApiClient.cs index 0f0c13e..9f11360 100644 --- a/src/Shared/ApiClient.cs +++ b/src/Shared/PaymoPaymoIApiClient.cs @@ -2,9 +2,9 @@ using System.Net.Http; namespace Novaloop.PaymoApi.Shared { - public class ApiClient : IApiClient + public class PaymoPaymoIApiClient : PaymoIApiClient { - public ApiClient(HttpClient client) + public PaymoPaymoIApiClient(HttpClient client) { Client = client; } diff --git a/src/Tasks/ITasksApi.cs b/src/Tasks/IPaymoTasksApi.cs similarity index 76% rename from src/Tasks/ITasksApi.cs rename to src/Tasks/IPaymoTasksApi.cs index d657678..cca2f4b 100644 --- a/src/Tasks/ITasksApi.cs +++ b/src/Tasks/IPaymoTasksApi.cs @@ -4,24 +4,24 @@ using System.Threading.Tasks; namespace Novaloop.PaymoApi.Tasks { - public interface ITasksApi + public interface IPaymoTasksApi { /// /// Receive all existing tasks /// - Task> GetTasks(); + Task> GetTasks(); /// /// Retrieve an existing Task by id /// /// id of the task /// - Task GetTask(int taskId); + Task GetTask(int taskId); /// /// Create a new Task /// - Task CreateTask(Novaloop.PaymoApi.Tasks.Models.Task task); + Task CreateTask(Models.PaymoTask paymoTask); /// /// Delete a task diff --git a/src/Tasks/Models/Task.cs b/src/Tasks/Models/PaymoTask.cs similarity index 96% rename from src/Tasks/Models/Task.cs rename to src/Tasks/Models/PaymoTask.cs index 49072cc..8eef6ac 100644 --- a/src/Tasks/Models/Task.cs +++ b/src/Tasks/Models/PaymoTask.cs @@ -4,7 +4,7 @@ using Novaloop.PaymoApi.Shared; namespace Novaloop.PaymoApi.Tasks.Models { - public class Task : BaseModel + public class PaymoTask : PaymoBaseModel { [JsonProperty("name")] public string Name { get; set; } diff --git a/src/Tasks/Models/TasksResponse.cs b/src/Tasks/Models/PaymoTasksResponse.cs similarity index 60% rename from src/Tasks/Models/TasksResponse.cs rename to src/Tasks/Models/PaymoTasksResponse.cs index 2e7fea5..5a3abb6 100644 --- a/src/Tasks/Models/TasksResponse.cs +++ b/src/Tasks/Models/PaymoTasksResponse.cs @@ -3,9 +3,9 @@ using Newtonsoft.Json; namespace Novaloop.PaymoApi.Tasks.Models { - public class TasksResponse + public class PaymoTasksResponse { [JsonProperty("tasks")] - public IEnumerable Tasks { get; set; } + public IEnumerable Tasks { get; set; } } } \ No newline at end of file diff --git a/src/Tasks/PaymoTasksApi.cs b/src/Tasks/PaymoTasksApi.cs new file mode 100644 index 0000000..095c751 --- /dev/null +++ b/src/Tasks/PaymoTasksApi.cs @@ -0,0 +1,54 @@ +using System.Collections.Generic; +using System.Dynamic; +using System.Linq; +using System.Threading.Tasks; +using Novaloop.PaymoApi.Shared; +using Novaloop.PaymoApi.Tasks.Models; +using Task = System.Threading.Tasks.Task; + +namespace Novaloop.PaymoApi.Tasks +{ + public class PaymoTasksApi : IPaymoTasksApi + { + private readonly IPaymoBaseApi _paymoBaseApi; + + public PaymoTasksApi(IPaymoBaseApi paymoBaseApi) + { + _paymoBaseApi = paymoBaseApi; + _paymoBaseApi.ResourceUri = "tasks"; + } + + + /// + public async Task> GetTasks() + { + return (await _paymoBaseApi.GetAll()).Tasks; + } + + /// + public async Task GetTask(int taskId) + { + return (await _paymoBaseApi.Get(taskId)).Tasks.Single(); + } + + + /// + public async Task CreateTask(PaymoTask paymoTask) + { + return (await _paymoBaseApi.Create(paymoTask)).Tasks.Single(); + } + + /// + public async Task DeleteTask(int taskId) + { + await _paymoBaseApi.Delete(taskId); + } + + + /// + public async Task UpdateTask(ExpandoObject task, int taskId) + { + await _paymoBaseApi.Update(task, taskId); + } + } +} \ No newline at end of file diff --git a/src/Tasks/TasksApi.cs b/src/Tasks/TasksApi.cs deleted file mode 100644 index fde8897..0000000 --- a/src/Tasks/TasksApi.cs +++ /dev/null @@ -1,54 +0,0 @@ -using System.Collections.Generic; -using System.Dynamic; -using System.Linq; -using System.Threading.Tasks; -using Novaloop.PaymoApi.Shared; -using Novaloop.PaymoApi.Tasks.Models; -using Task = System.Threading.Tasks.Task; - -namespace Novaloop.PaymoApi.Tasks -{ - public class TasksApi : ITasksApi - { - private readonly IBaseApi _baseApi; - - public TasksApi(IBaseApi baseApi) - { - _baseApi = baseApi; - _baseApi.ResourceUri = "tasks"; - } - - - /// - public async Task> GetTasks() - { - return (await _baseApi.GetAll()).Tasks; - } - - /// - public async Task GetTask(int taskId) - { - return (await _baseApi.Get(taskId)).Tasks.Single(); - } - - - /// - public async Task CreateTask(Novaloop.PaymoApi.Tasks.Models.Task task) - { - return (await _baseApi.Create(task)).Tasks.Single(); - } - - /// - public async Task DeleteTask(int taskId) - { - await _baseApi.Delete(taskId); - } - - - /// - public async Task UpdateTask(ExpandoObject task, int taskId) - { - await _baseApi.Update(task, taskId); - } - } -} \ No newline at end of file diff --git a/tests/ClientContactsApiTests.cs b/tests/ClientContactsApiTests.cs index e7615fd..a283b25 100644 --- a/tests/ClientContactsApiTests.cs +++ b/tests/ClientContactsApiTests.cs @@ -10,10 +10,10 @@ namespace Novaloop.PaymoApi.Tests { public class ClientContactsApiTests { - private readonly ClientContactsApi _clientContactsApi; - private readonly ClientsApi _clientsApi; + private readonly PaymoClientContactsApi _paymoClientContactsApi; + private readonly PaymoPaymoClientsApi _paymoPaymoClientsApi; - private readonly ClientContact _testClientContact = new ClientContact + private readonly PaymoClientContact _testPaymoClientContact = new PaymoClientContact { Name = "Testclient", Email = "test@client.de" @@ -22,8 +22,8 @@ namespace Novaloop.PaymoApi.Tests public ClientContactsApiTests() { - _clientContactsApi = new ClientContactsApi(new BaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); - _clientsApi = new ClientsApi(new BaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); + _paymoClientContactsApi = new PaymoClientContactsApi(new PaymoBaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); + _paymoPaymoClientsApi = new PaymoPaymoClientsApi(new PaymoBaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); } @@ -33,7 +33,7 @@ namespace Novaloop.PaymoApi.Tests // Arrange // Act - var clientContacts = (await _clientContactsApi.GetClientContacts()).ToList(); + var clientContacts = (await _paymoClientContactsApi.GetClientContacts()).ToList(); // Assert Assert.NotEmpty(clientContacts); @@ -45,8 +45,8 @@ namespace Novaloop.PaymoApi.Tests // Arrange // Act - var clientContacts = (await _clientContactsApi.GetClientContacts()).ToList(); - var clientContact = await _clientContactsApi.GetClientContact(clientContacts.First().Id); + var clientContacts = (await _paymoClientContactsApi.GetClientContacts()).ToList(); + var clientContact = await _paymoClientContactsApi.GetClientContact(clientContacts.First().Id); // Assert Assert.NotNull(clientContact); @@ -56,32 +56,32 @@ namespace Novaloop.PaymoApi.Tests public async void CreateClientContact() { // Arrange - var existingClientContact = (await _clientsApi.GetClients()).First(); + var existingClientContact = (await _paymoPaymoClientsApi.GetClients()).First(); // Act - _testClientContact.ClientId = existingClientContact.Id; - var createdClientContact = await _clientContactsApi.CreateClientContact(_testClientContact); - var clientContact = await _clientContactsApi.GetClientContact(createdClientContact.Id); + _testPaymoClientContact.ClientId = existingClientContact.Id; + var createdClientContact = await _paymoClientContactsApi.CreateClientContact(_testPaymoClientContact); + var clientContact = await _paymoClientContactsApi.GetClientContact(createdClientContact.Id); // Assert - Assert.Equal(_testClientContact.Name, clientContact.Name); - Assert.Equal(_testClientContact.Email, clientContact.Email); + Assert.Equal(_testPaymoClientContact.Name, clientContact.Name); + Assert.Equal(_testPaymoClientContact.Email, clientContact.Email); // Cleanup - await _clientContactsApi.DeleteClientContact(createdClientContact.Id); + await _paymoClientContactsApi.DeleteClientContact(createdClientContact.Id); } [Fact] public async void DeleteClientContact() { // Arrange - var existingClientContact = (await _clientsApi.GetClients()).First(); - _testClientContact.ClientId = existingClientContact.Id; - var createdClientContact = await _clientContactsApi.CreateClientContact(_testClientContact); + var existingClientContact = (await _paymoPaymoClientsApi.GetClients()).First(); + _testPaymoClientContact.ClientId = existingClientContact.Id; + var createdClientContact = await _paymoClientContactsApi.CreateClientContact(_testPaymoClientContact); // Act - await _clientContactsApi.DeleteClientContact(createdClientContact.Id); - var clientContacts = (await _clientContactsApi.GetClientContacts()).ToList(); + await _paymoClientContactsApi.DeleteClientContact(createdClientContact.Id); + var clientContacts = (await _paymoClientContactsApi.GetClientContacts()).ToList(); // Assert diff --git a/tests/ClientsApiTests.cs b/tests/ClientsApiTests.cs index 319d113..f4aa562 100644 --- a/tests/ClientsApiTests.cs +++ b/tests/ClientsApiTests.cs @@ -9,9 +9,9 @@ namespace Novaloop.PaymoApi.Tests { public class ClientsApiTests { - private readonly ClientsApi _clientsApi; + private readonly PaymoPaymoClientsApi _paymoPaymoClientsApi; - private readonly Client _testClient = new Client + private readonly PaymoClient _testPaymoClient = new PaymoClient { Name = "Testclient", Email = "test@client.de" @@ -19,7 +19,7 @@ namespace Novaloop.PaymoApi.Tests public ClientsApiTests() { - _clientsApi = new ClientsApi(new BaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); + _paymoPaymoClientsApi = new PaymoPaymoClientsApi(new PaymoBaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); } @@ -29,7 +29,7 @@ namespace Novaloop.PaymoApi.Tests // Arrange // Act - var clients = (await _clientsApi.GetClients()).ToList(); + var clients = (await _paymoPaymoClientsApi.GetClients()).ToList(); // Assert Assert.NotEmpty(clients); @@ -41,8 +41,8 @@ namespace Novaloop.PaymoApi.Tests // Arrange // Act - var clients = (await _clientsApi.GetClients()).ToList(); - var client = await _clientsApi.GetClient(clients.First().Id); + var clients = (await _paymoPaymoClientsApi.GetClients()).ToList(); + var client = await _paymoPaymoClientsApi.GetClient(clients.First().Id); // Assert Assert.NotNull(client); @@ -54,26 +54,26 @@ namespace Novaloop.PaymoApi.Tests // Arrange // Act - var createdClient = await _clientsApi.CreateClient(_testClient); - var client = await _clientsApi.GetClient(createdClient.Id); + var createdClient = await _paymoPaymoClientsApi.CreateClient(_testPaymoClient); + var client = await _paymoPaymoClientsApi.GetClient(createdClient.Id); // Assert - Assert.Equal(_testClient.Name, client.Name); - Assert.Equal(_testClient.Email, client.Email); + Assert.Equal(_testPaymoClient.Name, client.Name); + Assert.Equal(_testPaymoClient.Email, client.Email); // Cleanup - await _clientsApi.DeleteClient(createdClient.Id); + await _paymoPaymoClientsApi.DeleteClient(createdClient.Id); } [Fact] public async void DeleteClient() { // Arrange - var createdClient = await _clientsApi.CreateClient(_testClient); + var createdClient = await _paymoPaymoClientsApi.CreateClient(_testPaymoClient); // Act - await _clientsApi.DeleteClient(createdClient.Id); - var clients = (await _clientsApi.GetClients()).ToList(); + await _paymoPaymoClientsApi.DeleteClient(createdClient.Id); + var clients = (await _paymoPaymoClientsApi.GetClients()).ToList(); // Assert @@ -84,13 +84,13 @@ namespace Novaloop.PaymoApi.Tests public async void UpdateClient() { // Arrange - var createdClient = await _clientsApi.CreateClient(_testClient); + var createdClient = await _paymoPaymoClientsApi.CreateClient(_testPaymoClient); dynamic clientUpdateInfo = new ExpandoObject(); clientUpdateInfo.Name = "Updated"; // Act - await _clientsApi.UpdateClient(clientUpdateInfo, createdClient.Id); - var updatedClient = await _clientsApi.GetClient(createdClient.Id); + await _paymoPaymoClientsApi.UpdateClient(clientUpdateInfo, createdClient.Id); + var updatedClient = await _paymoPaymoClientsApi.GetClient(createdClient.Id); // Assert diff --git a/tests/DependencyFactory.cs b/tests/DependencyFactory.cs index ff9a69a..2f1e6d5 100644 --- a/tests/DependencyFactory.cs +++ b/tests/DependencyFactory.cs @@ -10,12 +10,12 @@ namespace Novaloop.PaymoApi.Tests { public static class DependencyFactory { - public static ApiClient GeneratePaymoApiClient() + public static PaymoPaymoIApiClient GeneratePaymoApiClient() { - return new ApiClient(new HttpClient(new LoggingHandler(new HttpClientHandler(), new NullLogger())) {BaseAddress = new Uri("https://app.paymoapp.com/")}); + return new PaymoPaymoIApiClient(new HttpClient(new PaymoLoggingHandler(new HttpClientHandler(), new NullLogger())) {BaseAddress = new Uri("https://app.paymoapp.com/")}); } - public static IOptions GenerateOptions() + public static IOptions GenerateOptions() { var paymoToken = new ConfigurationBuilder() .SetBasePath(AppContext.BaseDirectory) @@ -29,7 +29,7 @@ namespace Novaloop.PaymoApi.Tests throw new ArgumentException("Please set the environment variable 'PAYMOAPIINTEGRATIONTESTS__PAYMOTESTPROJECTTOKEN' with the token of your paymo test-project. Look inside Bitwarden if you work @ Novaloop."); } - return Options.Create(new ApiOptions {ApiToken = paymoToken}); + return Options.Create(new PaymoApiOptions {ApiToken = paymoToken}); } } } \ No newline at end of file diff --git a/tests/TasksApiTests.cs b/tests/TasksApiTests.cs index 9cf2728..38f146f 100644 --- a/tests/TasksApiTests.cs +++ b/tests/TasksApiTests.cs @@ -11,15 +11,15 @@ namespace Novaloop.PaymoApi.Tests public class TasksApiTests { private readonly ITestOutputHelper _testOutputHelper; - private readonly TasksApi _tasksApi; - private readonly Task _testTask; + private readonly PaymoTasksApi _paymoTasksApi; + private readonly PaymoTask _testPaymoTask; public TasksApiTests(ITestOutputHelper testOutputHelper) { _testOutputHelper = testOutputHelper; - _tasksApi = new TasksApi(new BaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); + _paymoTasksApi = new PaymoTasksApi(new PaymoBaseApi(DependencyFactory.GeneratePaymoApiClient(), DependencyFactory.GenerateOptions())); - _testTask = new Task + _testPaymoTask = new PaymoTask { Name = "Testtask", Description = "Just a little task" @@ -33,7 +33,7 @@ namespace Novaloop.PaymoApi.Tests // Arrange // Act - var tasks = (await _tasksApi.GetTasks()).ToList(); + var tasks = (await _paymoTasksApi.GetTasks()).ToList(); // Assert Assert.NotEmpty(tasks); @@ -46,8 +46,8 @@ namespace Novaloop.PaymoApi.Tests // Arrange // Act - var tasks = (await _tasksApi.GetTasks()).ToList(); - var task = await _tasksApi.GetTask(tasks.First().Id); + var tasks = (await _paymoTasksApi.GetTasks()).ToList(); + var task = await _paymoTasksApi.GetTask(tasks.First().Id); // Assert Assert.NotNull(task); @@ -57,32 +57,32 @@ namespace Novaloop.PaymoApi.Tests public async void CreateTask() { // Arrange - var existingTaskListId = (await _tasksApi.GetTasks()).First().TasklistId; + var existingTaskListId = (await _paymoTasksApi.GetTasks()).First().TasklistId; // Act - _testTask.TasklistId = existingTaskListId; - var createdTask = await _tasksApi.CreateTask(_testTask); - var task = await _tasksApi.GetTask(createdTask.Id); + _testPaymoTask.TasklistId = existingTaskListId; + var createdTask = await _paymoTasksApi.CreateTask(_testPaymoTask); + var task = await _paymoTasksApi.GetTask(createdTask.Id); // Assert - Assert.Equal(_testTask.Name, task.Name); - Assert.Equal(_testTask.Description, task.Description); + Assert.Equal(_testPaymoTask.Name, task.Name); + Assert.Equal(_testPaymoTask.Description, task.Description); // Cleanup - await _tasksApi.DeleteTask(createdTask.Id); + await _paymoTasksApi.DeleteTask(createdTask.Id); } [Fact] public async void DeleteTask() { // Arrange - var existingTaskListId = (await _tasksApi.GetTasks()).First().TasklistId; - _testTask.TasklistId = existingTaskListId; - var createdTask = await _tasksApi.CreateTask(_testTask); + var existingTaskListId = (await _paymoTasksApi.GetTasks()).First().TasklistId; + _testPaymoTask.TasklistId = existingTaskListId; + var createdTask = await _paymoTasksApi.CreateTask(_testPaymoTask); // Act - await _tasksApi.DeleteTask(createdTask.Id); - var tasks = (await _tasksApi.GetTasks()).ToList(); + await _paymoTasksApi.DeleteTask(createdTask.Id); + var tasks = (await _paymoTasksApi.GetTasks()).ToList(); // Assert @@ -93,16 +93,16 @@ namespace Novaloop.PaymoApi.Tests public async void UpdateTask() { // Arrange - var existingTaskListId = (await _tasksApi.GetTasks()).First().TasklistId; - _testTask.TasklistId = existingTaskListId; - var createdTask = await _tasksApi.CreateTask(_testTask); + var existingTaskListId = (await _paymoTasksApi.GetTasks()).First().TasklistId; + _testPaymoTask.TasklistId = existingTaskListId; + var createdTask = await _paymoTasksApi.CreateTask(_testPaymoTask); dynamic taskUpdateInfo = new ExpandoObject(); taskUpdateInfo.Name = "Updated"; - taskUpdateInfo.TaskListId = _testTask.TasklistId; + taskUpdateInfo.TaskListId = _testPaymoTask.TasklistId; // Act - await _tasksApi.UpdateTask(taskUpdateInfo, createdTask.Id); - var updatedTask = await _tasksApi.GetTask(createdTask.Id); + await _paymoTasksApi.UpdateTask(taskUpdateInfo, createdTask.Id); + var updatedTask = await _paymoTasksApi.GetTask(createdTask.Id); // Assert