From 3db4daffff1cbb6d2262a1caa873569b0d0a315a Mon Sep 17 00:00:00 2001 From: David Flatz Date: Mon, 13 Aug 2018 11:52:28 +0200 Subject: disable dyncols in WHERE when we have multiple tables because we can't trust _fields anymore and columns might be prefixed with tablename --- test/it_dbi.t | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'test/it_dbi.t') diff --git a/test/it_dbi.t b/test/it_dbi.t index 89df3b8..4e22152 100755 --- a/test/it_dbi.t +++ b/test/it_dbi.t @@ -360,6 +360,10 @@ is($r->key1, "a"); is($r->key2, null); $r->iterate(); is($r->key1, null); is($r->key2, "b"); +# don't do dyncols stuff in where when we select form multiple tables (column names are unknown then) +is($r->_where(['FROM' => 'it_dbi_test AS a, it_dbi_test AS b', '-a.ID' => 'b.ID']), 'WHERE a.ID = b.ID', "don't do JSON_EXTRACT when we have multiple tables in FROM"); +is($r->_where(['JOIN' => 'it_dbi_test AS b', '-a.ID' => 'b.ID']), 'WHERE a.ID = b.ID', "don't do JSON_EXTRACT when we JOIN"); + # # Test tracked update # -- cgit v1.2.3