Template
62 lines
2.5 KiB
C#
62 lines
2.5 KiB
C#
using FluentAssertions;
|
|
using Microsoft.Extensions.Logging;
|
|
using Moq;
|
|
using Strata.ContinuousImprovement.Biz.Encounter;
|
|
using Strata.ContinuousImprovement.Biz.Encounter.Opportunities;
|
|
using Strata.Schema.Client;
|
|
using Strata.Schema.Client.Dtos;
|
|
using Strata.Schema.Client.Dtos.Info;
|
|
using System.Diagnostics.CodeAnalysis;
|
|
|
|
|
|
namespace Strata.ContinuousImprovement.Biz.Test.Integration.JazzIntegrationTests
|
|
{
|
|
[ExcludeFromCodeCoverage]
|
|
[TestFixture, Category("Integration"), Category("CCI")]
|
|
internal class TestGetENOpportunityDetailQuery : IntegrationTestBase
|
|
{
|
|
[Test]
|
|
public async Task TestGetENOpportunityDetailQuery_Returns_Data()
|
|
{
|
|
// arrange
|
|
var config = CreateConfiguration();
|
|
var opportunity = CreateOpportunity();
|
|
var schemaService = new Mock<ISchemaServiceClient>().Object;
|
|
Mock.Get(schemaService)
|
|
.Setup(x => x.GetDimensionMembersFromHierarchyPathsAsync(It.IsAny<Guid>(), It.IsAny<IEnumerable<string>>(), It.IsAny<CancellationToken>()))
|
|
.ReturnsAsync(new List<MemberDto> { new() { Id = "188", } });
|
|
Mock.Get(schemaService)
|
|
.Setup(x => x.GetDimensionByGlobalIdAsync(It.IsAny<string>(), It.IsAny<CancellationToken>()))
|
|
.ReturnsAsync(new ScoreDimensionInfoDto { DimensionGuid = new Guid("3465fcd8-9149-4d96-8456-3ecaa3ffdadd") });
|
|
var logger = Mock.Of<ILogger<ENOpportunityDetailJob>>();
|
|
|
|
// act
|
|
var results = await JazzDbContext.GetENOpportunityDetailQuery(opportunity, config, schemaService, logger, GmAutomationDatabase);
|
|
|
|
// assert
|
|
results.Should().NotBeNullOrEmpty();
|
|
}
|
|
|
|
private ENOpportunityDataModel CreateOpportunity()
|
|
{
|
|
return new ENOpportunityDataModel()
|
|
{
|
|
EncounterOpportunityJSON = @"{
|
|
""EncounterGroup"":1,""IsSeasonal"":false, ""CaseTypes"":[],
|
|
""PatientPopulations"":[{""Text"":""All Readmissions"",""Id"":""CLINICALINDICATOR|CLINICALINDI|188""}],
|
|
""OpportunityLevel"":""Organization"",
|
|
""EncounterOpportunityLevel"":0,
|
|
""Entities"":[],""ServiceLines"":[],""Specialties"":[],""Providers"":[],""IsBaseline"":true}"
|
|
};
|
|
}
|
|
|
|
private Configuration.Configuration CreateConfiguration()
|
|
{
|
|
return new Configuration.Configuration
|
|
{
|
|
OrgDefinedEndDate = new DateTime(2024, 1, 1)
|
|
};
|
|
}
|
|
}
|
|
}
|