Add more tests to dblayeroo

git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@3502 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
This commit is contained in:
2017-04-10 14:33:52 +00:00
parent 56cbeaa891
commit ba093a14a2

View File

@@ -393,6 +393,7 @@ class test_dblayeroo_{ENGINE} extends PHPUnit_Framework_TestCase
public function test_innerJoin1 () public function test_innerJoin1 ()
{ {
// No filter
$db1 = $this->db1 (); $db1 = $this->db1 ();
$db2 = $this->db2 (); $db2 = $this->db2 ();
$res = $db2->select () $res = $db2->select ()
@@ -401,51 +402,52 @@ class test_dblayeroo_{ENGINE} extends PHPUnit_Framework_TestCase
$db1->disconnect (); $db1->disconnect ();
$db2->disconnect (); $db2->disconnect ();
$this->assertSame (array ( $this->assertSame (array (
array ( array (
'usersoo.uid' => 1, 'usersoo.uid' => 1,
'usersoo.gecos' => 'name', 'usersoo.gecos' => 'name',
'usersoo.password' => 'toto', 'usersoo.password' => 'toto',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
), ),
array ( array (
'usersoo.uid' => 4, 'usersoo.uid' => 4,
'usersoo.gecos' => 'name2', 'usersoo.gecos' => 'name2',
'usersoo.password' => 'pwd2', 'usersoo.password' => 'pwd2',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
), ),
array ( array (
'usersoo.uid' => 5, 'usersoo.uid' => 5,
'usersoo.gecos' => 'name3', 'usersoo.gecos' => 'name3',
'usersoo.password' => 'pwd3', 'usersoo.password' => 'pwd3',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
), ),
array ( array (
'usersoo.uid' => 6, 'usersoo.uid' => 6,
'usersoo.gecos' => 'name4', 'usersoo.gecos' => 'name4',
'usersoo.password' => 'pwd4', 'usersoo.password' => 'pwd4',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
), ),
), $res); ), $res);
} }
public function test_leftJoin2 () public function test_leftJoin2 ()
{ {
// No filter
$db1 = $this->db1 (); $db1 = $this->db1 ();
$db2 = $this->db2 (); $db2 = $this->db2 ();
$res = $db1->select () $res = $db1->select ()
@@ -454,56 +456,122 @@ class test_dblayeroo_{ENGINE} extends PHPUnit_Framework_TestCase
$db1->disconnect (); $db1->disconnect ();
$db2->disconnect (); $db2->disconnect ();
$this->assertSame (array ( $this->assertSame (array (
array ( array (
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
'usersoo.uid' => 1, 'usersoo.uid' => 1,
'usersoo.gecos' => 'name', 'usersoo.gecos' => 'name',
'usersoo.password' => 'toto', 'usersoo.password' => 'toto',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
), ),
array ( array (
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
'usersoo.uid' => 4, 'usersoo.uid' => 4,
'usersoo.gecos' => 'name2', 'usersoo.gecos' => 'name2',
'usersoo.password' => 'pwd2', 'usersoo.password' => 'pwd2',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
), ),
array ( array (
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
'usersoo.uid' => 5, 'usersoo.uid' => 5,
'usersoo.gecos' => 'name3', 'usersoo.gecos' => 'name3',
'usersoo.password' => 'pwd3', 'usersoo.password' => 'pwd3',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
), ),
array ( array (
'groupedoo.group' => 'group1', 'groupedoo.group' => 'group1',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
'usersoo.uid' => 6, 'usersoo.uid' => 6,
'usersoo.gecos' => 'name4', 'usersoo.gecos' => 'name4',
'usersoo.password' => 'pwd4', 'usersoo.password' => 'pwd4',
'usersoo.group' => 'group1', 'usersoo.group' => 'group1',
), ),
array ( array (
'groupedoo.group' => 'group2', 'groupedoo.group' => 'group2',
'groupedoo.object' => 'object', 'groupedoo.object' => 'object',
'groupedoo.where' => 'where', 'groupedoo.where' => 'where',
'groupedoo.with space' => NULL, 'groupedoo.with space' => NULL,
'usersoo.uid' => 0, 'usersoo.uid' => 0,
'usersoo.gecos' => NULL, 'usersoo.gecos' => NULL,
'usersoo.password' => NULL, 'usersoo.password' => NULL,
'usersoo.group' => NULL, 'usersoo.group' => NULL,
), ),
), $res); ), $res);
}
public function test_leftJoin3 ()
{
// Filter on the db1
$db1 = $this->db1 ();
$db2 = $this->db2 ();
$res = $db1->select ()
->displayColumn ("group")
->joinLeft ($db2, array ("group"=>"group"))
->execute ();
$db1->disconnect ();
$db2->disconnect ();
$this->assertSame (array (
array (
'groupedoo.group' => 'group1',
),
array (
'groupedoo.group' => 'group1',
),
array (
'groupedoo.group' => 'group1',
),
array (
'groupedoo.group' => 'group1',
),
array (
'groupedoo.group' => 'group2',
),
), $res);
}
public function test_leftJoin4 ()
{
// Filter on the db1
$db1 = $this->db1 ();
$db2 = $this->db2 ();
$db2->displayColumn ("group");
$res = $db1->select ()
->displayColumn ("group")
->joinLeft ($db2, array ("group"=>"group"))
->execute ();
$db1->disconnect ();
$db2->disconnect ();
$this->assertSame (array (
array (
'usersoo.group' => 'group1',
'groupedoo.group' => 'group1',
),
array (
'usersoo.group' => 'group1',
'groupedoo.group' => 'group1',
),
array (
'usersoo.group' => 'group1',
'groupedoo.group' => 'group1',
),
array (
'usersoo.group' => 'group1',
'groupedoo.group' => 'group1',
),
array (
'usersoo.group' => NULL,
'groupedoo.group' => 'group2',
),
), $res);
} }
} }