Skip to content

Commit

Permalink
Add test for json_each + json_keys.
Browse files Browse the repository at this point in the history
  • Loading branch information
rkistner committed Feb 4, 2025
1 parent 55213f3 commit 2c86d30
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions packages/sync-rules/test/src/table_valued_function_queries.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,19 @@ describe('table-valued function queries', () => {
expect(query.getStaticBucketIds(new RequestParameters({ sub: '' }, {}))).toEqual([]);
});

test('json_each on json_keys', function () {
const sql = `SELECT value FROM json_each(json_keys('{"a": [], "b": 2, "c": null}'))`;
const query = SqlParameterQuery.fromSql('mybucket', sql, PARSE_OPTIONS) as StaticSqlParameterQuery;
expect(query.errors).toEqual([]);
expect(query.bucket_parameters).toEqual(['value']);

expect(query.getStaticBucketIds(new RequestParameters({ sub: '' }, {}))).toEqual([
'mybucket["a"]',
'mybucket["b"]',
'mybucket["c"]'
]);
});

test('json_each with fn alias', function () {
const sql = "SELECT e.value FROM json_each(request.parameters() -> 'array') e";
const query = SqlParameterQuery.fromSql('mybucket', sql, {
Expand Down

0 comments on commit 2c86d30

Please sign in to comment.