using Dapper; using Snowflake.Data.Client; using Strata.DecisionSupport.Biz.Encounters; using Strata.DecisionSupport.Biz.Parameters; using Strata.DecisionSupport.Biz.Services; using System.Diagnostics.CodeAnalysis; namespace Strata.DecisionSupport.Biz.Test.Integration.IntegrationTests { [ExcludeFromCodeCoverage] [TestFixture, Category("Integration"), Category("DSS")] public class TestVariationEncounterChargeQuery : IntegrationTestBase { [TestCaseSource(nameof(VariationEncounterChargeQueryTestCases))] public async Task VariationEncounterChargeQueryTest(VariationEncounterChargeQueryInfo queryInfo) { var query = EncounterQueries.VariationEncounterChargeQuery(queryInfo.First, queryInfo.Rows, queryInfo.Args()); try { var result = ((IEnumerable)(await _databaseContext .QueryAsync(query, nameof(VariationEncounterChargeQueryTest), queryInfo.Parameters()))); await Verifier.Verify(query, verifySettings) .UseFileName(TestContext.CurrentContext.TestName(nameof(query))); await Verifier.Verify(result, verifySettings) .UseFileName(TestContext.CurrentContext.TestName(nameof(result))); } catch (SnowflakeDbException dbex) { // ILB } catch (Exception ex) { throw; } } [TestCaseSource(nameof(VariationEncounterChargeQueryTestCases))] public async Task VariationEncounterChargeInfoServiceTest(VariationEncounterChargeQueryInfo queryInfo) { try { var result = await _encounterQueryService.RunVariationEncounterChargeQuery(queryInfo, CancellationToken.None); await Verifier.Verify(result, verifySettings) .UseFileName(TestContext.CurrentContext.TestName(nameof(result))); } catch (SnowflakeDbException dbex) { // ILB } catch (Exception ex) { throw; } } public static IEnumerable VariationEncounterChargeQueryTestCases() { yield return new TestCaseData(new VariationEncounterChargeQueryInfo(false, false, false, false, false, true, new Guid[] { Guid.NewGuid() }, new int[] { 1, 2 }, 1, 1000)) .SetName("{m}"); } } }