Template
chore: deploy initial code base
This commit is contained in:
+69
@@ -0,0 +1,69 @@
|
||||
using Strata.ApiCommunication.Http;
|
||||
using Strata.ApiLib.Standard.Models;
|
||||
using Strata.ContinuousImprovement.Biz.Generics;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Net.Http.Json;
|
||||
|
||||
namespace Strata.ContinuousImprovement.Api.Test.Integration.Tests
|
||||
{
|
||||
[ExcludeFromCodeCoverage]
|
||||
[TestFixture(Category = "Integration")]
|
||||
|
||||
public class TestAllOpportunitiesController : ApiTestBase
|
||||
{
|
||||
protected const string AllOpportunitiesEndpoint = "api/v1/all-opportunities";
|
||||
|
||||
[Test]
|
||||
public async Task TestGetAllOportunitiesFromApi()
|
||||
{
|
||||
// arrange
|
||||
var configurations = await GetConfigurations();
|
||||
var configuration = configurations.First();
|
||||
var loadOptions = new Controllers.AllOpportunityLoadOptions
|
||||
{
|
||||
Filters = new Biz.All.Opportunities.Filters.AllFilters
|
||||
{
|
||||
ConfigurationGuid = configuration.ConfigurationGuid,
|
||||
OpportunityTypes =
|
||||
[
|
||||
$"{(int)OpportunityTypes.Encounter}",
|
||||
$"{(int) OpportunityTypes.QualityVariation}",
|
||||
$"{(int) OpportunityTypes.Variation}",
|
||||
],
|
||||
ViewVisible = true
|
||||
},
|
||||
PagingOptions = new Biz.Pagination.PagingOptions
|
||||
{
|
||||
First = 0,
|
||||
Rows = 100,
|
||||
SortOrder = Biz.Pagination.SortOrder.Desc,
|
||||
SortField = "IdentifiedSavings"
|
||||
}
|
||||
};
|
||||
var request = new HttpRequestMessage(HttpMethod.Post, AllOpportunitiesEndpoint);
|
||||
|
||||
// act
|
||||
await request.SetContentAsJsonAsync(loadOptions);
|
||||
var response = await HttpClient.SendAsync(request, CancellationToken.None);
|
||||
response.EnsureSuccessStatusCode();
|
||||
|
||||
// assert
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
var opportunitiesPage = new PagedApiResponse<Info.AllOpportunityInfo>();
|
||||
Assert.DoesNotThrowAsync(async () =>
|
||||
opportunitiesPage = await response.Content.ReadFromJsonAsync<PagedApiResponse<Info.AllOpportunityInfo>>());
|
||||
response.AssertIsValid();
|
||||
Assert.That(opportunitiesPage.Data, Is.Not.Empty);
|
||||
Assert.That(opportunitiesPage.Data.Count, Is.LessThanOrEqualTo(loadOptions.PagingOptions.Rows));
|
||||
Assert.That(opportunitiesPage.Data.Any(opp =>
|
||||
opp.OpportunityType == (int)OpportunityTypes.Encounter
|
||||
|| opp.OpportunityType == (int)OpportunityTypes.QualityVariation
|
||||
|| opp.OpportunityType == (int)OpportunityTypes.Variation), Is.True);
|
||||
Assert.That(opportunitiesPage.PagingInfo.ResultsPerPage, Is.LessThanOrEqualTo(loadOptions.PagingOptions.Rows));
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user