Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions meta/type-scope.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,18 @@
"types": "*",
"note": "Generic over Temporal *: appends to any temporal type."
},
"temporal_append_tsequence": {
"types": "*",
"note": "Generic over Temporal *: appends to any temporal type. Its bool expand parameter is no scope."
},
"temporal_merge": {
"types": "*",
"note": "Generic over Temporal *: merges any two temporal values of one type. Its trgeometry branch is no scope."
},
"temporal_merge_array": {
"types": "*",
"note": "Generic over Temporal *: merges an array of temporal values of one type. Its trgeometry branch is no scope."
},
"temporal_at_values": {
"types": "*",
"note": "Generic over Temporal *: restricts any temporal type to a value set."
Expand Down
10 changes: 10 additions & 0 deletions tests/test_typescope.py
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,16 @@ def test_the_array_accessors_serve_every_temporal_type(self):
self.assertTrue({'tint', 'tfloat', 'ttext', 'tgeompoint', 'tgeogpoint'} <= first,
f'{name} serves {sorted(first)}')

def test_append_and_merge_serve_every_temporal_type(self):
# as #test_the_array_accessors_serve_every_temporal_type: the bool expand parameter of
# temporal_append_tsequence and the trgeometry branch of temporal_merge read as scopes,
# keeping tbool and trgeometry alone
for name in ('temporal_append_tsequence', 'temporal_merge', 'temporal_merge_array'):
first = {s['args'][0].rstrip('[]')
for s in self.fns[name].get('sqlSignatures') or ()}
self.assertTrue({'tbool', 'tint', 'tfloat', 'ttext', 'tgeompoint', 'tgeogpoint',
'trgeometry'} <= first, f'{name} serves {sorted(first)}')


if __name__ == '__main__':
unittest.main()
Loading