From e305fcaf7446818c7ddd498ca950b0d4fd595570 Mon Sep 17 00:00:00 2001 From: Jamie Matthews Date: Mon, 25 Oct 2010 18:37:37 +0100 Subject: Add inner, left outer, right outer, full outer joins --- test/test_queries.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'test') diff --git a/test/test_queries.php b/test/test_queries.php index ea7ae44..cc73452 100644 --- a/test/test_queries.php +++ b/test/test_queries.php @@ -124,6 +124,22 @@ $expected = "SELECT * FROM `widget` JOIN `widget_handle` ON `widget_handle`.`widget_id` = `widget`.`id`"; Tester::check_equal("Simple join", $expected); + ORM::for_table('widget')->inner_join('widget_handle', array('widget_handle.widget_id', '=', 'widget.id'))->find_many(); + $expected = "SELECT * FROM `widget` INNER JOIN `widget_handle` ON `widget_handle`.`widget_id` = `widget`.`id`"; + Tester::check_equal("Inner join", $expected); + + ORM::for_table('widget')->left_outer_join('widget_handle', array('widget_handle.widget_id', '=', 'widget.id'))->find_many(); + $expected = "SELECT * FROM `widget` LEFT OUTER JOIN `widget_handle` ON `widget_handle`.`widget_id` = `widget`.`id`"; + Tester::check_equal("Left outer join", $expected); + + ORM::for_table('widget')->right_outer_join('widget_handle', array('widget_handle.widget_id', '=', 'widget.id'))->find_many(); + $expected = "SELECT * FROM `widget` RIGHT OUTER JOIN `widget_handle` ON `widget_handle`.`widget_id` = `widget`.`id`"; + Tester::check_equal("Right outer join", $expected); + + ORM::for_table('widget')->full_outer_join('widget_handle', array('widget_handle.widget_id', '=', 'widget.id'))->find_many(); + $expected = "SELECT * FROM `widget` FULL OUTER JOIN `widget_handle` ON `widget_handle`.`widget_id` = `widget`.`id`"; + Tester::check_equal("Full outer join", $expected); + $widget = ORM::for_table('widget')->create(); $widget->name = "Fred"; $widget->age = 10; -- cgit v1.2.3