Skip to content

Commit a2e678f

Browse files
committed
Adding more test cases for testing empty collections with count(), exists() and empty().
1 parent e6edeb3 commit a2e678f

File tree

2 files changed

+37
-3
lines changed

2 files changed

+37
-3
lines changed

fhirpath/src/test/resources/fhirpath-ptl/cases/existence_functions.yaml

Lines changed: 33 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,17 @@ tests:
66
- desc: '** Empty collection should return true **'
77
expression: 'nothing.empty()'
88
result: [ true ]
9+
- desc: '** Computed empty collection is empty **'
10+
expression: 'n1.where($this=0).empty()'
11+
result: [ true ]
12+
- desc: '** Resource singular empty collection is empty **'
13+
expression: 'gender.empty()'
14+
inputfile: 'Patient-empty.json'
15+
result: [ true ]
16+
- desc: '** Resource plural empty collection is empty **'
17+
expression: 'name.given.empty()'
18+
inputfile: 'Patient-empty.json'
19+
result: [ true ]
920
- desc: '** Singular integer is not empty **'
1021
expression: 'n1.empty()'
1122
result: [ false ]
@@ -37,9 +48,17 @@ tests:
3748
- desc: '** Empty collection has count 0 **'
3849
expression: 'nothing.count()'
3950
result: [ 0 ]
40-
- desc: '** Empty integer collection **'
51+
- desc: '** Computed empty collection has count 0 **'
4152
expression: 'n1.where($this=0).count()'
4253
result: [ 0 ]
54+
- desc: '** Resource singular empty collection has count 0 **'
55+
expression: 'gender.count()'
56+
inputfile: 'Patient-empty.json'
57+
result: [ 0 ]
58+
- desc: '** Resource plural empty collection has count 0 **'
59+
expression: 'name.given.count()'
60+
inputfile: 'Patient-empty.json'
61+
result: [ 0 ]
4362
- desc: '** Singular integer has count 1 **'
4463
expression: 'n1.count()'
4564
result: [ 1 ]
@@ -56,12 +75,23 @@ tests:
5675
expression: 'e1.xy.y.count()'
5776
result: [ 1 ]
5877
- 'Testing the exists() function in various scenarios':
59-
- desc: '** Empty literal should return false **'
78+
- desc: '** Empty literal should does not exist **'
6079
expression: '{}.exists()'
6180
result: [ false ]
62-
- desc: '** Empty collection should return false **'
81+
- desc: '** Empty collection does not exist **'
6382
expression: 'nothing.exists()'
6483
result: [ false ]
84+
- desc: '** Computed empty collection does not exist **'
85+
expression: 'n1.where($this=0).exists()'
86+
result: [ false ]
87+
- desc: '** Resource singular empty collection does not exist **'
88+
expression: 'gender.exists()'
89+
inputfile: 'Patient-empty.json'
90+
result: [ false ]
91+
- desc: '** Resource plural empty collection does not exist **'
92+
expression: 'name.given.exists()'
93+
inputfile: 'Patient-empty.json'
94+
result: [ false ]
6595
- desc: '** Singular integer exists **'
6696
expression: 'n1.exists()'
6797
result: [ true ]
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"resourceType": "Patient",
3+
"id": "empty"
4+
}

0 commit comments

Comments
 (0)