Template
chore: deploy initial code base
This commit is contained in:
+188
@@ -0,0 +1,188 @@
|
||||
using Strata.ApiCommunication.Http;
|
||||
using System.Net.Http.Json;
|
||||
|
||||
namespace Strata.ContinuousImprovement.Api.Test.Integration.Tests
|
||||
{
|
||||
[TestFixture(Category = "Integration")]
|
||||
public class TestInitiativesController : ApiTestBase
|
||||
{
|
||||
protected const string InitiativesEndpoint = "api/v1/initiatives";
|
||||
protected const string InitiativesDetailColumnsEndpoint = "api/v1/initiative-detail-columns";
|
||||
|
||||
[Test]
|
||||
public async Task TestInitiatives()
|
||||
{
|
||||
// arrange
|
||||
var configurations = await GetConfigurations();
|
||||
var configuration = configurations.OrderBy(c => c.DisplayOrder).First();
|
||||
var configurationGuid = configuration.ConfigurationGuid;
|
||||
var data = new
|
||||
{
|
||||
configurationGuid,
|
||||
name = "",
|
||||
status = 0,
|
||||
costDrivers = Array.Empty<string>(),
|
||||
costLeaders = Array.Empty<string>(),
|
||||
owners = Array.Empty<string>(),
|
||||
executiveSponsors = Array.Empty<string>(),
|
||||
workstreams = Array.Empty<string>(),
|
||||
rollupColumn1Values = Array.Empty<string>(),
|
||||
rollupColumn2Values = Array.Empty<string>(),
|
||||
rollupColumn3Values = Array.Empty<string>(),
|
||||
groupByCategory = "CostDriver"
|
||||
};
|
||||
var request = new HttpRequestMessage(HttpMethod.Post, InitiativesEndpoint);
|
||||
await request.SetContentAsJsonAsync(data);
|
||||
|
||||
// act
|
||||
var response = await HttpClient.SendAsync(request);
|
||||
response.EnsureSuccessStatusCode();
|
||||
var initiatives = await response.Content.ReadFromJsonAsync<IEnumerable<dynamic>>();
|
||||
|
||||
// assert
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
response.AssertIsValid();
|
||||
Assert.That(initiatives, Is.Not.Null.And.Not.Empty);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task TestInitiativesCriteria()
|
||||
{
|
||||
// arrange
|
||||
var request = new HttpRequestMessage(HttpMethod.Get, InitiativesEndpoint + "/criteria");
|
||||
|
||||
// act
|
||||
var response = await HttpClient.SendAsync(request);
|
||||
response.EnsureSuccessStatusCode();
|
||||
var initiativesCriteria = await response.Content.ReadFromJsonAsync<IEnumerable<dynamic>>();
|
||||
|
||||
// assert
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
response.AssertIsValid();
|
||||
Assert.That(initiativesCriteria, Is.Not.Null.And.Not.Empty);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task TestInitiativesDetailColumnList()
|
||||
{
|
||||
// arrange
|
||||
var request = new HttpRequestMessage(HttpMethod.Get, "api/v1/initiative-detail-columns/column-list");
|
||||
|
||||
// act
|
||||
var response = await HttpClient.SendAsync(request);
|
||||
response.EnsureSuccessStatusCode();
|
||||
var detailColumns = await response.Content.ReadFromJsonAsync<IEnumerable<dynamic>>();
|
||||
|
||||
// assert
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
response.AssertIsValid();
|
||||
Assert.That(detailColumns, Is.Not.Null.And.Not.Empty);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task TestInitiativesDefaultColumnList()
|
||||
{
|
||||
// arrange
|
||||
var request = new HttpRequestMessage(HttpMethod.Get, "api/v1/initiative-detail-columns/default-column-list");
|
||||
|
||||
// act
|
||||
var response = await HttpClient.SendAsync(request);
|
||||
response.EnsureSuccessStatusCode();
|
||||
var detailColumns = await response.Content.ReadFromJsonAsync<IEnumerable<dynamic>>();
|
||||
|
||||
// assert
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
response.AssertIsValid();
|
||||
Assert.That(detailColumns, Is.Not.Null.And.Not.Empty);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task TestInitiativesFilterOptions()
|
||||
{
|
||||
// arrange
|
||||
var configurations = await GetConfigurations();
|
||||
var configuration = configurations.OrderBy(c => c.DisplayOrder).First();
|
||||
var configurationGuid = configuration.ConfigurationGuid;
|
||||
var request = new HttpRequestMessage(HttpMethod.Get, InitiativesEndpoint + $"/{configurationGuid}/filter-options");
|
||||
|
||||
// act
|
||||
var response = await HttpClient.SendAsync(request);
|
||||
response.EnsureSuccessStatusCode();
|
||||
var filterOptions = await response.Content.ReadAsStringAsync();
|
||||
|
||||
// assert
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
response.AssertIsValid();
|
||||
Assert.That(filterOptions, Is.Not.Null.And.Not.Empty);
|
||||
});
|
||||
|
||||
}
|
||||
[Test]
|
||||
public async Task TestInitiativesFilterSettings()
|
||||
{
|
||||
// arrange
|
||||
var configurations = await GetConfigurations();
|
||||
var configuration = configurations.OrderBy(c => c.DisplayOrder).First();
|
||||
var configurationGuid = configuration.ConfigurationGuid;
|
||||
var request = new HttpRequestMessage(HttpMethod.Get, InitiativesEndpoint + $"/filter-settings");
|
||||
|
||||
// act
|
||||
var response = await HttpClient.SendAsync(request);
|
||||
response.EnsureSuccessStatusCode();
|
||||
var filterSettings = await response.Content.ReadAsStringAsync();
|
||||
|
||||
// assert
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
response.AssertIsValid();
|
||||
Assert.That(filterSettings, Is.Not.Null.And.Not.Empty);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task TestInitiativesExport()
|
||||
{
|
||||
// arrange
|
||||
var configurations = await GetConfigurations();
|
||||
var configuration = configurations.OrderBy(c => c.DisplayOrder).First();
|
||||
var configurationGuid = configuration.ConfigurationGuid;
|
||||
var data = new
|
||||
{
|
||||
sortOptions = new
|
||||
{
|
||||
sortField = "name",
|
||||
sortOrder = "Asc"
|
||||
},
|
||||
filters = new
|
||||
{
|
||||
configurationGuid,
|
||||
groupByCategory = "CostDriver"
|
||||
}
|
||||
};
|
||||
var request = new HttpRequestMessage(HttpMethod.Post, InitiativesEndpoint + "/export?exportAll=true");
|
||||
await request.SetContentAsJsonAsync(data);
|
||||
|
||||
// act
|
||||
var response = await HttpClient.SendAsync(request);
|
||||
response.EnsureSuccessStatusCode();
|
||||
|
||||
// assert
|
||||
response.AssertIsValid(true);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user