From d7847288e482217bf060c5ad667c5e0bbc93d144 Mon Sep 17 00:00:00 2001 From: mark_story Date: Wed, 27 Oct 2010 22:32:15 -0400 Subject: [PATCH] Adding Fennec as a built-in mobile browser. Refactoring a test case to pull out the exceptional case. Fixes #932 --- cake/libs/cake_request.php | 2 +- cake/tests/cases/libs/cake_request.test.php | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/cake/libs/cake_request.php b/cake/libs/cake_request.php index 7ff06df2f..24870a3cd 100644 --- a/cake/libs/cake_request.php +++ b/cake/libs/cake_request.php @@ -100,7 +100,7 @@ class CakeRequest implements ArrayAccess { 'ajax' => array('env' => 'HTTP_X_REQUESTED_WITH', 'value' => 'XMLHttpRequest'), 'flash' => array('env' => 'HTTP_USER_AGENT', 'pattern' => '/^(Shockwave|Adobe) Flash/'), 'mobile' => array('env' => 'HTTP_USER_AGENT', 'options' => array( - 'Android', 'AvantGo', 'BlackBerry', 'DoCoMo', 'iPod', 'iPhone', + 'Android', 'AvantGo', 'BlackBerry', 'DoCoMo', 'Fennec', 'iPod', 'iPhone', 'J2ME', 'MIDP', 'NetFront', 'Nokia', 'Opera Mini', 'PalmOS', 'PalmSource', 'portalmmm', 'Plucker', 'ReqwirelessWeb', 'SonyEricsson', 'Symbian', 'UP\\.Browser', 'webOS', 'Windows CE', 'Xiino' diff --git a/cake/tests/cases/libs/cake_request.test.php b/cake/tests/cases/libs/cake_request.test.php index b42d9413d..f452631c1 100644 --- a/cake/tests/cases/libs/cake_request.test.php +++ b/cake/tests/cases/libs/cake_request.test.php @@ -605,8 +605,20 @@ class CakeRequestTestCase extends CakeTestCase { $_SERVER['HTTP_USER_AGENT'] = 'Android 2.0'; $this->assertTrue($request->is('mobile')); $this->assertTrue($request->isMobile()); + + $_SERVER['HTTP_USER_AGENT'] = 'Mozilla/5.0 (Windows NT 5.1; rv:2.0b6pre) Gecko/20100902 Firefox/4.0b6pre Fennec/2.0b1pre'; + $this->assertTrue($request->is('mobile')); + $this->assertTrue($request->isMobile()); + } - $this->expectException(); +/** + * test __call expcetions + * + * @expectedException Exception + * @return void + */ + function test__callExceptionOnUnknownMethod() { + $request = new CakeRequest('some/path'); $request->IamABanana(); }