powered by nequal
Home » Net_UserAgent_Mobile_Capability » Timeline » 1727

Diffs

Net_UserAgent_Mobile_Capability/trunk/test/Net_UserAgent_Mobile_CapabilityTest.php

@@ -58,4 +58,16 @@
$_SERVER = $server_;
}
}
+
+    /**
+     * @expectedException Net_UserAgent_Mobile_Capability_Exception
+     */
+    public function testGetThrowException()
+    {
+        $_SERVER['HTTP_USER_AGENT'] = 'DoCoMo/1.0/D501i';
+        $ua = Net_UserAgent_Mobile::factory();
+        $cap = new Net_UserAgent_Mobile_Capability($ua);
+
+        $ret = $cap->get('aaa');
+    }
}

Net_UserAgent_Mobile_Capability/trunk/src/Net/UserAgent/Mobile/Capability/Exception.php

@@ -0,0 +1,8 @@
+<?php
+
+require_once 'PEAR/Exception.php';
+
+
+class Net_UserAgent_Mobile_Capability_Exception extends PEAR_Exception
+{
+}

Net_UserAgent_Mobile_Capability/trunk/src/Net/UserAgent/Mobile/Capability.php

@@ -1,6 +1,8 @@
<?php
+require_once 'Net/UserAgent/Mobile/Capability/Exception.php';
+
class Net_UserAgent_Mobile_Capability
{
private $_useragent;
@@ -11,6 +13,9 @@
$this->_useragent = $useragent;
}
+    /**
+     * @throws Net_UserAgent_Mobile_Capability_Exception
+     */
public function get($name)
{
switch ($name) {
@@ -84,6 +89,9 @@
return substr($this->_useragent->getHeader('X-UP-DEVCAP-MULTIMEDIA'), 12, 1) === '1';
}
return null;
+
+        default:
+            throw new Net_UserAgent_Mobile_Capability_Exception("no property: $name");
}
return null;