Conversation
|
Formatting check succeeded! |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #1646 +/- ##
============================================
+ Coverage 65.78% 65.82% +0.03%
Complexity 1645 1645
============================================
Files 472 474 +2
Lines 27426 27448 +22
Branches 5458 5463 +5
============================================
+ Hits 18043 18067 +24
+ Misses 7085 7083 -2
Partials 2298 2298 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Src/java/engine-fhir/src/test/kotlin/org/hl7/fhirpath/FhirHelpersDstu2Test.kt
Outdated
Show resolved
Hide resolved
...ql/elm/requirements/fhir/CMS135/resources/Library-FHIRHelpers-EffectiveDataRequirements.json
Show resolved
Hide resolved
...est/kotlin/org/opencds/cqf/cql/engine/fhir/data/EvaluatedResourcesMultiLibComplexDepsTest.kt
Outdated
Show resolved
Hide resolved
...est/kotlin/org/opencds/cqf/cql/engine/fhir/data/EvaluatedResourcesMultiLibComplexDepsTest.kt
Outdated
Show resolved
Hide resolved
| for (libraryIdentifier in reversedOrderLibraryIdentifiers) { | ||
| val library = loadMultiLibResult.retrieveLibrary(libraryIdentifier) | ||
| val expressionSet = expressions ?: this.getExpressionSet(library!!) | ||
| val expressions = |
There was a problem hiding this comment.
I can't comment on unchanged code: can you refactor the code block for reversedOrderLibraryIdentifiers to use a standard Kotlin construct that's more readable? I added this as a hack when it was still Java
There was a problem hiding this comment.
Fixed using Kotlin's reversed()
| */ | ||
| class CompiledLibraryResult( | ||
| data class CompiledLibraryResult( | ||
| val identifier: VersionedIdentifier, |
There was a problem hiding this comment.
Question: why do we need this now, and not the identifier from the CompiledLibrary?
There was a problem hiding this comment.
Expressions are now grouped by library in the evaluation request. We load and validate the libraries and for every compiled library look for the expressions requested for that library. The identifier from the evaluation request was needed in CompiledLibraryResult to keep it associated with the compiled library.
The name and version in compiledLibrary.identifier and compiledLibrary.library.identifier are set based on what library Lib1 version '1.0.0' says in the library. But the identifier in the request may e.g. omit the version so they won't be strictly equal.
There was a problem hiding this comment.
makes sense. could you please add a comment that makes this clear?
There was a problem hiding this comment.
Done, thanks for highlighting this!
lukedegruchy
left a comment
There was a problem hiding this comment.
Approved with a small suggestion and a question
|



A DSL for engine's
evaluateAPI, supporting expression and function evaluation: