Пример #1
0
        public void Should_Correctly_Represent_Observation_Shape()
        {
            var compilerCtx = GetObservationCompilerContext();
            var compiler    = new DatasetSqlCompiler(GetSqlCompiler(), GetCompilerOptions());

            var executionCtx = compiler.BuildDatasetSql(compilerCtx);

            Assert.Equal(Shape.Observation, executionCtx.Shape);
        }
Пример #2
0
        public void Should_Throw_If_Sql_Contains_Illegal_Command()
        {
            var compilerCtx = GetEncounterCompilerContext();

            compilerCtx.DatasetQuery.SqlStatement = "DROP TABLE encounter";
            var compiler = new DatasetSqlCompiler(GetSqlCompiler(), GetCompilerOptions());

            Assert.Throws <LeafCompilerException>(() => compiler.BuildDatasetSql(compilerCtx));
        }
Пример #3
0
        public void Should_Correctly_Reference_AppDb()
        {
            var compilerCtx = GetEncounterCompilerContext();
            var compiler = new DatasetSqlCompiler(GetSqlCompiler(), GetCompilerOptions());

            var executionCtx = compiler.BuildDatasetSql(compilerCtx);

            Assert.Contains("LeafDB", executionCtx.CompiledQuery);
        }
Пример #4
0
        public void Encounter_Should_Correctly_Reference_LateBound_Parameter()
        {
            var compilerCtx = GetEncounterCompilerContext();
            var compiler    = new DatasetSqlCompiler(GetSqlCompiler(), GetCompilerOptions());

            var executionCtx = compiler.BuildDatasetSql(compilerCtx);

            Assert.Contains(EncounterColumns.AdmitDate, executionCtx.CompiledQuery);
            Assert.Contains(executionCtx.Parameters, p => p.Name == "@late");
        }
Пример #5
0
        public void Should_Correctly_Reference_QueryId_Parameter()
        {
            var compilerCtx = GetEncounterCompilerContext();
            var compiler    = new DatasetSqlCompiler(GetSqlCompiler(), GetCompilerOptions());

            var executionCtx = compiler.BuildDatasetSql(compilerCtx);

            Assert.Contains(ShapedDatasetCompilerContext.QueryIdParam, executionCtx.CompiledQuery);
            Assert.Contains(executionCtx.Parameters, p => p.Name == ShapedDatasetCompilerContext.QueryIdParam && p.Value.Equals(compilerCtx.QueryContext.QueryId));
        }
Пример #6
0
        public void Observation_Should_Correctly_Reference_EarlyBound_And_LateBound_Parameter()
        {
            var compilerCtx = GetObservationCompilerContext(early: true);
            var compiler    = new DatasetSqlCompiler(GetSqlCompiler(), GetCompilerOptions());

            var executionCtx = compiler.BuildDatasetSql(compilerCtx);

            Assert.Contains(ObservationColumns.EffectiveDate, executionCtx.CompiledQuery);
            Assert.Contains(executionCtx.Parameters, p => p.Name == "@early");
            Assert.Contains(executionCtx.Parameters, p => p.Name == "@late");
        }