@@ -1756,8 +1756,10 @@ public function testAddOrderBy($itemtype, $sort_fields, $expected)
17561756 {
17571757 $ result = \Search::addOrderBy ($ itemtype , $ sort_fields );
17581758 $ this ->assertEquals ($ expected , $ result );
1759+ }
17591760
1760- // Complex cases
1761+ public function testAddOrderByComplex ()
1762+ {
17611763 $ table_addtable = 'glpi_users_af1042e23ce6565cfe58c6db91f84692 ' ;
17621764 $ table_ticket_user = 'glpi_tickets_users_019878060c6d5f06cbe3c4d7c31dec24 ' ;
17631765
@@ -1769,17 +1771,17 @@ public function testAddOrderBy($itemtype, $sort_fields, $expected)
17691771 ]
17701772 ]);
17711773 $ this ->assertEquals (
1772- " ORDER BY GROUP_CONCAT(DISTINCT CONCAT(
1773- IFNULL(` $ table_addtable`.`firstname`, ''),
1774- IFNULL(` $ table_addtable`.`realname`, ''),
1775- IFNULL(` $ table_addtable`.`name`, ''),
1776- IFNULL(` $ table_ticket_user`.`alternative_email`, '')
1777- ) ORDER BY CONCAT(
1778- IFNULL(` $ table_addtable`.`firstname`, ''),
1779- IFNULL(` $ table_addtable`.`realname`, ''),
1780- IFNULL(` $ table_addtable`.`name`, ''),
1781- IFNULL(` $ table_ticket_user`.`alternative_email`, '')) ASC
1782- ) ASC " ,
1774+ " ORDER BY GROUP_CONCAT(DISTINCT CONCAT( " .
1775+ " IFNULL(` $ table_addtable`.`firstname`, ''), " .
1776+ " IFNULL(`$ table_addtable`.`realname`, ''), " .
1777+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1778+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '') " .
1779+ " ) ORDER BY CONCAT( " .
1780+ " IFNULL(` $ table_addtable`.`firstname`, ''), " .
1781+ " IFNULL(`$ table_addtable`.`realname`, ''), " .
1782+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1783+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '')) ASC " .
1784+ " ) ASC " ,
17831785 $ user_order_1
17841786 );
17851787 $ user_order_2 = \Search::addOrderBy ('Ticket ' , [
@@ -1789,17 +1791,17 @@ public function testAddOrderBy($itemtype, $sort_fields, $expected)
17891791 ]
17901792 ]);
17911793 $ this ->assertEquals (
1792- " ORDER BY GROUP_CONCAT(DISTINCT CONCAT(
1793- IFNULL(` $ table_addtable`.`firstname`, ''),
1794- IFNULL(` $ table_addtable`.`realname`, ''),
1795- IFNULL(` $ table_addtable`.`name`, ''),
1796- IFNULL(` $ table_ticket_user`.`alternative_email`, '')
1797- ) ORDER BY CONCAT(
1798- IFNULL(` $ table_addtable`.`firstname`, ''),
1799- IFNULL(` $ table_addtable`.`realname`, ''),
1800- IFNULL(` $ table_addtable`.`name`, ''),
1801- IFNULL(` $ table_ticket_user`.`alternative_email`, '')) ASC
1802- ) DESC " ,
1794+ " ORDER BY GROUP_CONCAT(DISTINCT CONCAT( " .
1795+ " IFNULL(` $ table_addtable`.`firstname`, ''), " .
1796+ " IFNULL(`$ table_addtable`.`realname`, ''), " .
1797+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1798+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '') " .
1799+ " ) ORDER BY CONCAT( " .
1800+ " IFNULL(` $ table_addtable`.`firstname`, ''), " .
1801+ " IFNULL(`$ table_addtable`.`realname`, ''), " .
1802+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1803+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '')) ASC " .
1804+ " ) DESC " ,
18031805 $ user_order_2
18041806 );
18051807
@@ -1811,17 +1813,17 @@ public function testAddOrderBy($itemtype, $sort_fields, $expected)
18111813 ]
18121814 ]);
18131815 $ this ->assertEquals (
1814- " ORDER BY GROUP_CONCAT(DISTINCT CONCAT(
1815- IFNULL(` $ table_addtable`.`realname`, ''),
1816- IFNULL(` $ table_addtable`.`firstname`, ''),
1817- IFNULL(` $ table_addtable`.`name`, ''),
1818- IFNULL(` $ table_ticket_user`.`alternative_email`, '')
1819- ) ORDER BY CONCAT(
1820- IFNULL(` $ table_addtable`.`realname`, ''),
1821- IFNULL(` $ table_addtable`.`firstname`, ''),
1822- IFNULL(` $ table_addtable`.`name`, ''),
1823- IFNULL(` $ table_ticket_user`.`alternative_email`, '')) ASC
1824- ) ASC " ,
1816+ " ORDER BY GROUP_CONCAT(DISTINCT CONCAT( " .
1817+ " IFNULL(` $ table_addtable`.`realname`, ''), " .
1818+ " IFNULL(`$ table_addtable`.`firstname`, ''), " .
1819+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1820+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '') " .
1821+ " ) ORDER BY CONCAT( " .
1822+ " IFNULL(` $ table_addtable`.`realname`, ''), " .
1823+ " IFNULL(`$ table_addtable`.`firstname`, ''), " .
1824+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1825+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '')) ASC " .
1826+ " ) ASC " ,
18251827 $ user_order_3
18261828 );
18271829 $ user_order_4 = \Search::addOrderBy ('Ticket ' , [
@@ -1831,17 +1833,17 @@ public function testAddOrderBy($itemtype, $sort_fields, $expected)
18311833 ]
18321834 ]);
18331835 $ this ->assertEquals (
1834- " ORDER BY GROUP_CONCAT(DISTINCT CONCAT(
1835- IFNULL(` $ table_addtable`.`realname`, ''),
1836- IFNULL(` $ table_addtable`.`firstname`, ''),
1837- IFNULL(` $ table_addtable`.`name`, ''),
1838- IFNULL(` $ table_ticket_user`.`alternative_email`, '')
1839- ) ORDER BY CONCAT(
1840- IFNULL(` $ table_addtable`.`realname`, ''),
1841- IFNULL(` $ table_addtable`.`firstname`, ''),
1842- IFNULL(` $ table_addtable`.`name`, ''),
1843- IFNULL(` $ table_ticket_user`.`alternative_email`, '')) ASC
1844- ) DESC " ,
1836+ " ORDER BY GROUP_CONCAT(DISTINCT CONCAT( " .
1837+ " IFNULL(` $ table_addtable`.`realname`, ''), " .
1838+ " IFNULL(`$ table_addtable`.`firstname`, ''), " .
1839+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1840+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '') " .
1841+ " ) ORDER BY CONCAT( " .
1842+ " IFNULL(` $ table_addtable`.`realname`, ''), " .
1843+ " IFNULL(`$ table_addtable`.`firstname`, ''), " .
1844+ " IFNULL(`$ table_addtable`.`name`, ''), " .
1845+ " IFNULL(`$ table_ticket_user`.`alternative_email`, '')) ASC " .
1846+ " ) DESC " ,
18451847 $ user_order_4
18461848 );
18471849 }
@@ -2613,7 +2615,7 @@ public static function providerAddWhere()
26132615 'searchtype ' => 'contains ' ,
26142616 'val ' => '< 192.168.1.10 ' ,
26152617 'meta ' => false ,
2616- 'expected ' => "AND ( INET_ATON(`glpi_ipaddresses`.`name`) < INET_ATON('192.168.1.10') ) " ,
2618+ 'expected ' => "AND INET_ATON(`glpi_ipaddresses`.`name`) < INET_ATON('192.168.1.10') " ,
26172619 ],
26182620 [
26192621 'link ' => ' AND ' ,
@@ -2623,7 +2625,7 @@ public static function providerAddWhere()
26232625 'searchtype ' => 'contains ' ,
26242626 'val ' => '> 192.168.1.10 ' ,
26252627 'meta ' => false ,
2626- 'expected ' => "AND ( INET_ATON(`glpi_ipaddresses`.`name`) > INET_ATON('192.168.1.10') ) " ,
2628+ 'expected ' => "AND INET_ATON(`glpi_ipaddresses`.`name`) > INET_ATON('192.168.1.10') " ,
26272629 ],
26282630 ];
26292631 }
@@ -2731,11 +2733,7 @@ public function testSearchWithMultipleFkeysOnSameTable()
27312733 "`glpi_users_users_id_recipient`.`id` = ' {$ user_normal_id }' " ,
27322734
27332735 // Check that ORDER applies on corresponding table alias
2734- "CONCAT(
2735- IFNULL(`glpi_users_users_id_recipient`.`realname`, ''),
2736- IFNULL(`glpi_users_users_id_recipient`.`firstname`, ''),
2737- IFNULL(`glpi_users_users_id_recipient`.`name`, '')
2738- ) ASC "
2736+ "CONCAT(IFNULL(`glpi_users_users_id_recipient`.`realname`, ''), IFNULL(`glpi_users_users_id_recipient`.`firstname`, ''), IFNULL(`glpi_users_users_id_recipient`.`name`, '')) ASC "
27392737 ];
27402738 foreach ($ contains as $ contain ) {
27412739 $ this ->assertStringContainsString ($ contain , $ data ['sql ' ]['search ' ]);
0 commit comments