OSDN Git Service

初回コミット(v2.6.17.1)
[magic3/magic3.git] / include / lib / Net_UserAgent_Mobile-1.0.0 / tests / Mobile / EZwebTestCase.php
1 <?php
2 /* vim: set expandtab tabstop=4 shiftwidth=4: */
3
4 /**
5  * PHP versions 5
6  *
7  * Copyright (c) 2008-2009 KUBO Atsuhiro <kubo@iteman.jp>,
8  * All rights reserved.
9  *
10  * Redistribution and use in source and binary forms, with or without
11  * modification, are permitted provided that the following conditions are met:
12  *
13  *     * Redistributions of source code must retain the above copyright
14  *       notice, this list of conditions and the following disclaimer.
15  *     * Redistributions in binary form must reproduce the above copyright
16  *       notice, this list of conditions and the following disclaimer in the
17  *       documentation and/or other materials provided with the distribution.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29  * POSSIBILITY OF SUCH DAMAGE.
30  *
31  * @category   Networking
32  * @package    Net_UserAgent_Mobile
33  * @author     KUBO Atsuhiro <kubo@iteman.jp>
34  * @copyright  2008-2009 KUBO Atsuhiro <kubo@iteman.jp>
35  * @license    http://www.opensource.org/licenses/bsd-license.php  New BSD License
36  * @version    CVS: $Id: EZwebTestCase.php 2036 2009-07-03 04:52:56Z fishbone $
37  * @since      File available since Release 0.31.0
38  */
39
40 require_once dirname(__FILE__) . '/AbstractTestCase.php';
41 require_once 'Net/UserAgent/Mobile/EZweb.php';
42
43 // {{{ Net_UserAgent_Mobile_EZwebTestCase
44
45 /**
46  * Some tests for Net_UserAgent_Mobile_EZweb.
47  *
48  * @category   Networking
49  * @package    Net_UserAgent_Mobile
50  * @author     KUBO Atsuhiro <kubo@iteman.jp>
51  * @copyright  2008-2009 KUBO Atsuhiro <kubo@iteman.jp>
52  * @license    http://www.opensource.org/licenses/bsd-license.php  New BSD License
53  * @version    Release: 1.0.0
54  * @since      Class available since Release 0.31.0
55  */
56 class Net_UserAgent_Mobile_EZwebTestCase extends Net_UserAgent_Mobile_AbstractTestCase
57 {
58
59     // {{{ properties
60
61     /**#@+
62      * @access public
63      */
64
65     /**#@-*/
66
67     /**#@+
68      * @access protected
69      */
70
71     /**#@-*/
72
73     /**#@+
74      * @access private
75      */
76
77     private $_profiles = array('KDDI-CA23 UP.Browser/6.2.0.3.111 (GUI) MMP/2.0' => array('model' => 'CA23'),
78                                'KDDI-CA24 UP.Browser/6.2.0.5 (GUI) MMP/2.0' => array('model' => 'CA24'),
79                                'KDDI-CA25 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'CA25'),
80                                'KDDI-CA26 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'CA26'),
81                                'KDDI-CA27 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'CA27'),
82                                'KDDI-CA28 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'CA28'),
83                                'KDDI-CA31 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'CA31'),
84                                'KDDI-CA32 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'CA32'),
85                                'KDDI-CA33 UP.Browser/6.2.0.10.4 (GUI) MMP/2.0' => array('model' => 'CA33'),
86                                'KDDI-CA34 UP.Browser/6.2.0.10.3.3 (GUI) MMP/2.0' => array('model' => 'CA34'),
87                                'KDDI-CA35 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'CA35'),
88                                'KDDI-CA37 UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0' => array('model' => 'CA37'),
89                                'KDDI-HI32 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'HI32'),
90                                'KDDI-HI33 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'HI33'),
91                                'KDDI-HI34 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'HI34'),
92                                'KDDI-HI35 UP.Browser/6.2.0.9.2 (GUI) MMP/2.0' => array('model' => 'HI35'),
93                                'KDDI-HI36 UP.Browser/6.2.0.10.4 (GUI) MMP/2.0' => array('model' => 'HI36'),
94                                'KDDI-HI37 UP.Browser/6.2.0.10.3.3 (GUI) MMP/2.0' => array('model' => 'HI37'),
95                                'KDDI-HI38 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'HI38'),
96                                'KDDI-HI38 UP.Browser/6.2.0.11.1.3.110 (GUI) MMP/2.0' => array('model' => 'HI38'),
97                                'KDDI-HI39 UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0' => array('model' => 'HI39'),
98                                'KDDI-KC22 UP.Browser/6.0.8.3 (GUI) MMP/1.1' => array('model' => 'KC22'),
99                                'KDDI-KC23 UP.Browser/6.2.0.5 (GUI) MMP/2.0' => array('model' => 'KC23'),
100                                'KDDI-KC27 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'KC27'),
101                                'KDDI-KC28 UP.Browser/6.2.0.10.1 (GUI) MMP/2.0' => array('model' => 'KC28'),
102                                'KDDI-KC31 UP.Browser/6.2.0.5 (GUI) MMP/2.0' => array('model' => 'KC31'),
103                                'KDDI-KC31 UP.Browser/6.2.0.5.c.1.100 (GUI) MMP/2.0' => array('model' => 'KC31'),
104                                'KDDI-KC32 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'KC32'),
105                                'KDDI-KC33 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'KC33'),
106                                'KDDI-KC34 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'KC34'),
107                                'KDDI-KC35 UP.Browser/6.2.0.10.2.2 (GUI) MMP/2.0' => array('model' => 'KC35'),
108                                'KDDI-KC36 UP.Browser/6.2.0.10.2.2 (GUI) MMP/2.0' => array('model' => 'KC36'),
109                                'KDDI-KC37 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'KC37'),
110                                'KDDI-KC38 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'KC38'),
111                                'KDDI-KC38 UP.Browser/6.2.0.11.1.2.2 (GUI) MMP/2.0' => array('model' => 'KC38'),
112                                'KDDI-KC39 UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0' => array('model' => 'KC39'),
113                                'KDDI-KC3A UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0' => array('model' => 'KC3A'),
114                                'KDDI-KCU1 UP.Browser/6.2.0.5.1 (GUI) MMP/2.0' => array('model' => 'KCU1'),
115                                'KDDI-MA31 UP.Browser/6.2.0.11.1.3.110 (GUI) MMP/2.0' => array('model' => 'MA31'),
116                                'KDDI-MA31 UP.Browser/6.2.0.11.1.4 (GUI) MMP/2.0' => array('model' => 'MA31'),
117                                'KDDI-PT21 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'PT21'),
118                                'KDDI-SA24 UP.Browser/6.0.8.2 (GUI) MMP/1.1' => array('model' => 'SA24'),
119                                'KDDI-SA25 UP.Browser/6.2.0.4 (GUI) MMP/2.0' => array('model' => 'SA25'),
120                                'KDDI-SA25 UP.Browser/6.2.0.5 (GUI) MMP/2.0' => array('model' => 'SA25'),
121                                'KDDI-SA26 UP.Browser/6.2.0.5.1 (GUI) MMP/2.0' => array('model' => 'SA26'),
122                                'KDDI-SA27 UP.Browser/6.2.0.6.3 (GUI) MMP/2.0' => array('model' => 'SA27'),
123                                'KDDI-SA28 UP.Browser/6.2.0.5 (GUI) MMP/2.0' => array('model' => 'SA28'),
124                                'KDDI-SA29 UP.Browser/6.2.0.10.1 (GUI) MMP/2.0' => array('model' => 'SA29'),
125                                'KDDI-SA31 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'SA31'),
126                                'KDDI-SA32 UP.Browser/6.2.0.8 (GUI) MMP/2.0' => array('model' => 'SA32'),
127                                'KDDI-SA33 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'SA33'),
128                                'KDDI-SA34 UP.Browser/6.2.0.9.1 (GUI) MMP/2.0' => array('model' => 'SA34'),
129                                'KDDI-SA35 UP.Browser/6.2.0.9.1 (GUI) MMP/2.0' => array('model' => 'SA35'),
130                                'KDDI-SA36 UP.Browser/6.2.0.10.2.1 (GUI) MMP/2.0' => array('model' => 'SA36'),
131                                'KDDI-SA38 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'SA38'),
132                                'KDDI-SA39 UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0' => array('model' => 'SA39'),
133                                'KDDI-SH31 UP.Browser/6.2.0.10.3.5 (GUI) MMP/2.0' => array('model' => 'SH31'),
134                                'KDDI-SH32 UP.Browser/6.2.0.11.2.1 (GUI) MMP/2.0' => array('model' => 'SH32'),
135                                'KDDI-SN25 UP.Browser/6.2.0.5 (GUI) MMP/2.0' => array('model' => 'SN25'),
136                                'KDDI-SN26 UP.Browser/6.2.0.5 (GUI) MMP/2.0' => array('model' => 'SN26'),
137                                'KDDI-SN27 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'SN27'),
138                                'KDDI-SN29 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'SN29'),
139                                'KDDI-SN31 UP.Browser/6.2.0.7.3.129 (GUI) MMP/2.0' => array('model' => 'SN31'),
140                                'KDDI-SN32 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'SN32'),
141                                'KDDI-SN33 UP.Browser/6.2.0.9.2 (GUI) MMP/2.0' => array('model' => 'SN33'),
142                                'KDDI-SN34 UP.Browser/6.2.0.10.4 (GUI) MMP/2.0' => array('model' => 'SN34'),
143                                'KDDI-SN35 UP.Browser/6.2.0.9.2 (GUI) MMP/2.0' => array('model' => 'SN35'),
144                                'KDDI-SN36 UP.Browser/6.2.0.10.4 (GUI) MMP/2.0' => array('model' => 'SN36'),
145                                'KDDI-SN37 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'SN37'),
146                                'KDDI-SN38 UP.Browser/6.2.0.11.2 (GUI) MMP/2.0' => array('model' => 'SN38'),
147                                'KDDI-SN39 UP.Browser/6.2.0.11.2.1 (GUI) MMP/2.0' => array('model' => 'SN39'),
148                                'KDDI-ST21 UP.Browser/6.0.8.3 (GUI) MMP/1.1' => array('model' => 'ST21'),
149                                'KDDI-ST22 UP.Browser/6.0.8.3 (GUI) MMP/1.1' => array('model' => 'ST22'),
150                                'KDDI-ST23 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'ST23'),
151                                'KDDI-ST24 UP.Browser/6.2.0.8 (GUI) MMP/2.0' => array('model' => 'ST24'),
152                                'KDDI-ST25 UP.Browser/6.2.0.8 (GUI) MMP/2.0' => array('model' => 'ST25'),
153                                'KDDI-ST26 UP.Browser/6.2.0.8 (GUI) MMP/2.0' => array('model' => 'ST26'),
154                                'KDDI-ST27 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'ST27'),
155                                'KDDI-ST28 UP.Browser/6.2.0.10.1 (GUI) MMP/2.0' => array('model' => 'ST28'),
156                                'KDDI-ST2C UP.Browser/6.2.0.11.1.2.1 (GUI) MMP/2.0' => array('model' => 'ST2C'),
157                                'KDDI-ST31 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'ST31'),
158                                'KDDI-TS21 UP.Browser/6.0.2.276 (GUI) MMP/1.1' => array('model' => 'TS21'),
159                                'KDDI-TS25 UP.Browser/6.0.8.3 (GUI) MMP/1.1' => array('model' => 'TS25'),
160                                'KDDI-TS27 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'TS27'),
161                                'KDDI-TS28 UP.Browser/6.2.0.6.2 (GUI) MMP/2.0' => array('model' => 'TS28'),
162                                'KDDI-TS29 UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'TS29'),
163                                'KDDI-TS2A UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'TS2A'),
164                                'KDDI-TS2B UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'TS2B'),
165                                'KDDI-TS2C UP.Browser/6.2.0.9 (GUI) MMP/2.0' => array('model' => 'TS2C'),
166                                'KDDI-TS2D UP.Browser/6.2.0.11.1.2.1 (GUI) MMP/2.0' => array('model' => 'TS2D'),
167                                'KDDI-TS31 UP.Browser/6.2.0.8 (GUI) MMP/2.0' => array('model' => 'TS31'),
168                                'KDDI-TS32 UP.Browser/6.2.0.9.1 (GUI) MMP/2.0' => array('model' => 'TS32'),
169                                'KDDI-TS33 UP.Browser/6.2.0.9.1 (GUI) MMP/2.0' => array('model' => 'TS33'),
170                                'KDDI-TS34 UP.Browser/6.2.0.10.2.1 (GUI) MMP/2.0' => array('model' => 'TS34'),
171                                'KDDI-TS35 UP.Browser/6.2.0.10.2.1 (GUI) MMP/2.0' => array('model' => 'TS35'),
172                                'KDDI-TS36 UP.Browser/6.2.0.10.2.1 (GUI) MMP/2.0' => array('model' => 'TS36'),
173                                'KDDI-TS37 UP.Browser/6.2.0.10.3.3 (GUI) MMP/2.0' => array('model' => 'TS37'),
174                                'KDDI-TS37 UP.Browser/6.2.0.10.3.3.1 (GUI) MMP/2.0' => array('model' => 'TS37'),
175                                'KDDI-TS38 UP.Browser/6.2.0.11.1.2 (GUI) MMP/2.0' => array('model' => 'TS38'),
176                                'KDDI-TS39 UP.Browser/6.2.0.11.2 (GUI) MMP/2.0' => array('model' => 'TS39'),
177                                'KDDI-TS3A UP.Browser/6.2.0.11.2 (GUI) MMP/2.0' => array('model' => 'TS3A'),
178                                'KDDI-TS3A UP.Browser/6.2.0.11.2.1 (GUI) MMP/2.0' => array('model' => 'TS3A'),
179                                'KDDI-TS3B UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0' => array('model' => 'TS3B'),
180                                'KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0' => array('model' => 'TS3C'),
181                                'UP.Browser/3.01-HI01 UP.Link/3.4.5.2' => array('model' => 'HI01'),
182                                'UP.Browser/3.04-KC14 UP.Link/3.4.5.9' => array('model' => 'KC14'),
183                                'UP.Browser/3.04-KC15 UP.Link/3.4.5.9' => array('model' => 'KC15'),
184                                'UP.Browser/3.04-KCT8 UP.Link/3.4.5.9' => array('model' => 'KCT8'),
185                                'UP.Browser/3.04-ST14 UP.Link/3.4.5.9' => array('model' => 'ST14'),
186                                'UP.Browser/3.04-TST4 UP.Link/3.4.5.6' => array('model' => 'TST4')
187                                );
188
189     /**#@-*/
190
191     /**#@+
192      * @access public
193      */
194
195     public function testShouldDetectUserAgentsAsEzweb()
196     {
197         reset($this->_profiles);
198         while (list($userAgent, $profile) = each($this->_profiles)) {
199             $agent = new Net_UserAgent_Mobile_EZweb($userAgent);
200
201             $this->assertFalse($agent->isDoCoMo());
202             $this->assertTrue($agent->isEZweb());
203             $this->assertFalse($agent->isSoftBank());
204             $this->assertFalse($agent->isWillcom());
205             $this->assertFalse($agent->isNonMobile());
206         }
207     }
208
209     public function testShouldProvideTheModelNameOfAUserAgent()
210     {
211         reset($this->_profiles);
212         while (list($userAgent, $profile) = each($this->_profiles)) {
213             $agent = new Net_UserAgent_Mobile_EZweb($userAgent);
214
215             $this->assertEquals($profile['model'], $agent->getModel());
216         }
217     }
218
219     /**
220      * @since Method available since Release 1.0.0RC1
221      */
222     public function testShouldProvideTheUidOfASubscriber()
223     {
224         $uid = '12345678901234_56.ezweb.ne.jp';
225         $_SERVER['HTTP_X_UP_SUBNO'] = $uid;
226         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
227
228         $this->assertEquals($uid, $agent->getUID());
229
230         unset($_SERVER['HTTP_X_UP_SUBNO']);
231         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
232
233         $this->assertNull($agent->getUID());
234     }
235
236     /**
237      * @since Method available since Release 1.0.0RC1
238      */
239     public function testShouldProvideTheVersionOfAUserAgent()
240     {
241         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
242
243         $this->assertEquals('6.2.0.12.1.3 (GUI)', $agent->getVersion());
244
245         $agent = new Net_UserAgent_Mobile_EZweb('UP.Browser/3.04-TST4 UP.Link/3.4.5.6');
246
247         $this->assertEquals('3.04', $agent->getVersion());
248     }
249
250     /**
251      * @since Method available since Release 1.0.0RC1
252      */
253     public function testShouldProvideTheDeviceIdOfAUserAgent()
254     {
255         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
256
257         $this->assertEquals('TS3C', $agent->getDeviceID());
258
259         $agent = new Net_UserAgent_Mobile_EZweb('UP.Browser/3.04-TST4 UP.Link/3.4.5.6');
260
261         $this->assertEquals('TST4', $agent->getDeviceID());
262     }
263
264     /**
265      * @since Method available since Release 1.0.0RC1
266      */
267     public function testShouldProvideTheServerOfAUserAgent()
268     {
269         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
270
271         $this->assertEquals('MMP/2.0', $agent->getServer());
272
273         $agent = new Net_UserAgent_Mobile_EZweb('UP.Browser/3.04-TST4 UP.Link/3.4.5.6');
274
275         $this->assertEquals('UP.Link/3.4.5.6', $agent->getServer());
276     }
277
278     /**
279      * @since Method available since Release 1.0.0RC1
280      */
281     public function testShouldTellWhetherAUserAgentIsXhtmlCompliantModelOrNot()
282     {
283         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
284
285         $this->assertTrue($agent->isXHTMLCompliant());
286
287         $agent = new Net_UserAgent_Mobile_EZweb('UP.Browser/3.04-TST4 UP.Link/3.4.5.6');
288
289         $this->assertFalse($agent->isXHTMLCompliant());
290     }
291
292     /**
293      * @since Method available since Release 1.0.0RC1
294      */
295     public function testShouldProvideTheCommentOfAUserAgent()
296     {
297         $agent = new Net_UserAgent_Mobile_EZweb('UP.Browser/3.04-TS14 UP.Link/3.4.4 (Google WAP Proxy/1.0)');
298
299         $this->assertEquals('Google WAP Proxy/1.0', $agent->getComment());
300
301         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
302
303         $this->assertNull($agent->getComment());
304     }
305
306     /**
307      * @since Method available since Release 1.0.0RC1
308      */
309     public function testShouldTellWhetherAUserAgentIsWap2ModelOrNot()
310     {
311         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
312
313         $this->assertTrue($agent->isWAP2());
314
315         $agent = new Net_UserAgent_Mobile_EZweb('UP.Browser/3.04-TST4 UP.Link/3.4.5.6');
316
317         $this->assertFalse($agent->isWAP2());
318     }
319
320     /**
321      * @since Method available since Release 1.0.0RC1
322      */
323     public function testShouldTellWhetherAUserAgentIsWap1ModelOrNot()
324     {
325         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS3C UP.Browser/6.2.0.12.1.3 (GUI) MMP/2.0');
326
327         $this->assertFalse($agent->isWAP1());
328
329         $agent = new Net_UserAgent_Mobile_EZweb('UP.Browser/3.04-TST4 UP.Link/3.4.5.6');
330
331         $this->assertTrue($agent->isWAP1());
332     }
333
334     /**
335      * @since Method available since Release 1.0.0RC1
336      */
337     public function testShouldProvideTheScreenInformationOfAUserAgent()
338     {
339         $_SERVER['HTTP_X_UP_DEVCAP_SCREENPIXELS'] = '90,70';
340         $_SERVER['HTTP_X_UP_DEVCAP_SCREENDEPTH'] = '16,RGB565';
341         $_SERVER['HTTP_X_UP_DEVCAP_ISCOLOR'] = '1';
342
343         $agent = new Net_UserAgent_Mobile_EZweb('KDDI-TS21 UP.Browser/6.0.2.276 (GUI) MMP/1.1');
344
345         $display = $agent->getDisplay();
346
347         $this->assertEquals(90, $display->getWidth());
348         $this->assertEquals(70, $display->getHeight());
349         $this->assertTrue($display->isColor());
350         $this->assertEquals(65536, $display->getDepth());
351
352         unset($_SERVER['HTTP_X_UP_DEVCAP_ISCOLOR']);
353         unset($_SERVER['HTTP_X_UP_DEVCAP_SCREENDEPTH']);
354         unset($_SERVER['HTTP_X_UP_DEVCAP_SCREENPIXELS']);
355     }
356
357     /**#@-*/
358
359     /**#@+
360      * @access protected
361      */
362
363     /**#@-*/
364
365     /**#@+
366      * @access private
367      */
368
369     /**#@-*/
370
371     // }}}
372 }
373
374 // }}}
375
376 /*
377  * Local Variables:
378  * mode: php
379  * coding: iso-8859-1
380  * tab-width: 4
381  * c-basic-offset: 4
382  * c-hanging-comment-ender-p: nil
383  * indent-tabs-mode: nil
384  * End:
385  */