Skip to content

Commit 2def40e

Browse files
authored
Add test case for issue 776 (#786)
I am adding a tiny test that uses the SQL statement that was reported to break an older version of SQL parser library #776
1 parent c051290 commit 2def40e

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

src/query_router.rs

+13
Original file line numberDiff line numberDiff line change
@@ -1399,6 +1399,19 @@ mod test {
13991399
assert!(!qr.query_parser_enabled());
14001400
}
14011401

1402+
#[test]
1403+
fn test_query_parser() {
1404+
QueryRouter::setup();
1405+
let mut qr = QueryRouter::new();
1406+
qr.pool_settings.query_parser_read_write_splitting = true;
1407+
1408+
let query = simple_query("SELECT req_tab_0.* FROM validation req_tab_0 WHERE array['http://www.w3.org/ns/shacl#ValidationResult'] && req_tab_0.type::text[] AND ( ( (req_tab_0.focusnode = 'DataSource_Credilogic_DataSourceAddress_144959227') ) )");
1409+
assert!(qr.infer(&qr.parse(&query).unwrap()).is_ok());
1410+
1411+
let query = simple_query("WITH EmployeeSalaries AS (SELECT Department, Salary FROM Employees) SELECT Department, AVG(Salary) AS AverageSalary FROM EmployeeSalaries GROUP BY Department;");
1412+
assert!(qr.infer(&qr.parse(&query).unwrap()).is_ok());
1413+
}
1414+
14021415
#[test]
14031416
fn test_update_from_pool_settings() {
14041417
QueryRouter::setup();

0 commit comments

Comments
 (0)