├── index.js ├── .gitignore ├── .travis.yml ├── test ├── device_car_test.js ├── not_default_options_test.js ├── device_tv_test.js ├── device_bot_phone_test.js ├── device_desktop_test.js ├── device_tablet_test.js └── device_phone_6_test.js ├── package.json ├── LICENSE ├── README.md └── lib └── device.js /index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = require('./lib/device.js'); -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | lib-cov 2 | *.seed 3 | *.log 4 | *.csv 5 | *.dat 6 | *.dat.tmp 7 | *.out 8 | *.pid 9 | *.gz 10 | *.njsproj 11 | *.sln 12 | 13 | pids 14 | logs 15 | results 16 | .vs 17 | bin 18 | obj 19 | 20 | node_modules 21 | npm-debug.log 22 | 23 | .c9revisions -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | branches: 3 | only: 4 | - master 5 | node_js: 6 | - "4.1" 7 | - "4.0" 8 | - "0.12" 9 | - "0.11" 10 | - "0.10" 11 | - "iojs" 12 | 13 | notifications: 14 | email: 15 | - 6speedpt@gmail.com 16 | 17 | sudo: false 18 | -------------------------------------------------------------------------------- /test/device_car_test.js: -------------------------------------------------------------------------------- 1 | var device = require('../lib/device.js'), 2 | assert = require('assert'); 3 | 4 | describe('device', function() { 5 | describe('1.Tesla Model S',function(){ 6 | it('should get device type tv', function(){ 7 | var mydevice = device('Mozilla/5.0 (X11; u; Linux; C) AppleWebKit /533.3 (Khtml, like Gheko) QtCarBrowser Safari /533.3'); 8 | assert.equal(mydevice.type, 'car'); 9 | }); 10 | }); 11 | describe('Car device type check with is method', function () { 12 | it('should get true', function () { 13 | var mydevice = device('QtCarBrowser'); 14 | assert.equal(mydevice.is('car'), true); 15 | }); 16 | }); 17 | }); -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "device", 3 | "author": "Rodrigo Guerreiro (@rguerreiro)", 4 | "description": "Device type detection library based on the useragent string. Refactored from express-device.", 5 | "keywords": ["browser","mobile","detection","user-agent","useragent","desktop","phone","tablet","tv","bot","car","parsing","device"], 6 | "version": "0.3.8", 7 | "main": "./index.js", 8 | "private": false, 9 | "engines": { 10 | "node": ">=0.10" 11 | }, 12 | "dependencies": { 13 | "useragent": "*" 14 | }, 15 | "devDependencies": { 16 | "mocha": "*" 17 | }, 18 | "scripts": { 19 | "test": "mocha" 20 | }, 21 | "license": "MIT", 22 | "repository": { 23 | "type": "git", 24 | "url": "https://github.com/rguerreiro/device.git" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Rodrigo Guerreiro 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # device [![NPM version](http://img.shields.io/npm/v/device.svg?style=flat)](https://npmjs.org/package/device) [![Downloads](https://img.shields.io/npm/dm/device.svg?style=flat)](https://npmjs.org/package/device) [![Build Status](https://secure.travis-ci.org/rguerreiro/device.png?branch=master)](http://travis-ci.org/rguerreiro/device) 2 | 3 | ## device 4 | 5 | Basically the [express-device](https://github.com/rguerreiro/express-device) gained life of it's own and I had to refactor the basic functionality (it makes sense). Many were using [express-device](https://github.com/rguerreiro/express-device) only to identify the type of device and didn't want all the [express](http://expressjs.com) stuff. 6 | 7 | ## how to use it? 8 | 9 | $ npm install device 10 | 11 | Here's an example on how to use it: 12 | 13 | ```javascript 14 | var device = require('device'); 15 | var mydevice = device('put here user-agent string'); 16 | 17 | if(mydevice.is('bot')) 18 | // do something... 19 | else 20 | // do another thing... 21 | ``` 22 | By doing this you're getting an object that have the following properties: 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 |
NameField TypeDescriptionPossible Values
typestringIt gets the device type for the parsed user-agent stringdesktop, tv, tablet, phone, bot or car
modelstringIt gets the device model name for the parsed user-agent stringExample: iPhone. If the option parseUserAgent is set to false, then it will return an empty string
38 | 39 | It accepts an object with only the config options you which to override (go [here](https://github.com/rguerreiro/device/blob/master/test/not_default_options_test.js) for some examples). The ones you don't override it will use the default values. Here's the list with the available config options: 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
NameField TypeDescriptionPossible Values
emptyUserAgentDeviceTypestringDevice type to be returned whenever the has an empty user-agent. Defaults to desktop.desktop, tv, tablet, phone, bot or car
unknownUserAgentDeviceTypestringDevice type to be returned whenever the user-agent is unknown. Defaults to phone.desktop, tv, tablet, phone, bot or car
botUserAgentDeviceTypestringDevice type to be returned whenever the user-agent belongs to a bot. Defaults to bot.desktop, tv, tablet, phone, bot or car
carUserAgentDeviceTypestringDevice type to be returned whenever the user-agent belongs to a car. Defaults to car.desktop, tv, tablet, phone, bot or car
parseUserAgentstringConfiguration to parse the user-agent string using the useragent npm package. It's needed in order to get the device name. Defaults to false.true | false
73 | 74 | In case you didn't notice there's also a method **is()** that will return a boolean (true or false) when you pass the device type that you want validate against (check the initial example). 75 | 76 | ## contributors 77 | 78 | Some contributed in the [express-device](https://github.com/rguerreiro/express-device) repository. 79 | 80 | - [@rguerreiro](https://github.com/rguerreiro) 81 | - [@aledbf](https://github.com/aledbf) 82 | - [@ryansully](https://github.com/ryansully) 83 | - [@lyxsus](https://github.com/lyxsus) 84 | - [@dsyph3r](https://github.com/dsyph3r) 85 | - [@davo11122](https://github.com/davo11122) 86 | - [@esco](https://github.com/esco) 87 | - [@Saicheg](https://github.com/Saicheg) 88 | - [@brycekahle](https://github.com/brycekahle) 89 | - [@manjeshpv](https://github.com/manjeshpv) 90 | - [@Sitebase](https://github.com/Sitebase) 91 | - [@lennym](https://github.com/lennym) 92 | - [@martincad](https://github.com/martincad) 93 | - [@mettin](https://github.com/mettin) 94 | - [@cliftonc](https://github.com/cliftonc) 95 | - [@BorePlusPlus](https://github.com/BorePlusPlus) 96 | 97 | Special thanks to [@jimmybergman](https://github.com/jimmybergman) that allowed me to use his `device` package for this refactoring. 98 | 99 | ## where to go from here? 100 | 101 | Currently, `device` is on **version 0.3.8**. In order to add more features I'm asking anyone to contribute with some ideas. You can do it by making some feature requests on the issues panel, but I prefer that you make your contribution with some pull requests ;) 102 | 103 | ## license 104 | 105 | The MIT License (MIT) 106 | 107 | Copyright (c) 2015 Rodrigo Guerreiro 108 | 109 | Permission is hereby granted, free of charge, to any person obtaining a copy 110 | of this software and associated documentation files (the "Software"), to deal 111 | in the Software without restriction, including without limitation the rights 112 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 113 | copies of the Software, and to permit persons to whom the Software is 114 | furnished to do so, subject to the following conditions: 115 | 116 | The above copyright notice and this permission notice shall be included in all 117 | copies or substantial portions of the Software. 118 | 119 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 120 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 121 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 122 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 123 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 124 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 125 | SOFTWARE. 126 | -------------------------------------------------------------------------------- /lib/device.js: -------------------------------------------------------------------------------- 1 | /* Based on Categorizr (https://github.com/bjankord/Categorizr) by Brett Jankord (http://www.brettjankord.com) */ 2 | 3 | 'use strict'; 4 | 5 | var useragent = require('useragent'); 6 | 7 | var defaultOptions = { 8 | emptyUserAgentDeviceType: 'desktop', 9 | unknownUserAgentDeviceType: 'phone', 10 | botUserAgentDeviceType: 'bot', 11 | carUserAgentDeviceType: 'car', 12 | parseUserAgent: false 13 | }; 14 | 15 | function merge(obj1, obj2) { 16 | var obj3 = {}; 17 | if (obj1) { for (var attrname in obj1) { obj3[attrname] = obj1[attrname]; } } 18 | if (obj2) { for (var attrname in obj2) { obj3[attrname] = obj2[attrname]; } } 19 | return obj3; 20 | } 21 | 22 | function DeviceParser(user_agent, options) { 23 | var self = this; 24 | 25 | self.options = merge(defaultOptions, options); 26 | 27 | self.make_sure_parser_was_executed = function () { 28 | if (self.options.parseUserAgent === true && !self.useragent) 29 | self.useragent = useragent.lookup(user_agent); 30 | }; 31 | 32 | self.get_model = function () { 33 | self.make_sure_parser_was_executed(); 34 | if (self.useragent) 35 | return self.useragent.device.family; 36 | return ''; 37 | }; 38 | 39 | self.get_type = function () { 40 | var ua = user_agent; 41 | 42 | if (!ua || ua === '') { 43 | // No user agent. 44 | return self.options.emptyUserAgentDeviceType; 45 | } 46 | // overwrite Flipboard user agent otherwise it's detected as a desktop 47 | if (ua.match(/FlipboardProxy/i)) 48 | ua = 'FlipboardProxy/1.1; http://flipboard.com/browserproxy'; 49 | if (ua.match(/Applebot/i)) 50 | ua = 'Applebot/0.1; http://www.apple.com/go/applebot'; 51 | if (ua.match(/GoogleTV|SmartTV|SMART-TV|Internet TV|NetCast|NETTV|AppleTV|boxee|Kylo|Roku|DLNADOC|hbbtv|CrKey|CE\-HTML/i)) { 52 | // if user agent is a smart TV - http://goo.gl/FocDk 53 | return 'tv'; 54 | } else if (ua.match(/Xbox|PLAYSTATION (3|4)|Wii/i)) { 55 | // if user agent is a TV Based Gaming Console 56 | return 'tv'; 57 | } else if (ua.match(/QtCarBrowser/i)) { 58 | // if the user agent is a car 59 | return self.options.carUserAgentDeviceType;; 60 | } else if (ua.match(/Googlebot/i)) { 61 | // if user agent is a BOT/Crawler/Spider 62 | return self.options.botUserAgentDeviceType; 63 | } else if (ua.match(/iP(a|ro)d/i) || (ua.match(/tablet/i) && !ua.match(/RX-34/i)) || ua.match(/FOLIO/i)) { 64 | // if user agent is a Tablet 65 | return 'tablet'; 66 | } else if (ua.match(/Linux/i) && ua.match(/Android/i) && !ua.match(/Fennec|mobi|HTC Magic|HTCX06HT|Nexus One|SC-02B|fone 945/i)) { 67 | // if user agent is an Android Tablet 68 | return 'tablet'; 69 | } else if (ua.match(/Kindle/i) || (ua.match(/Mac OS/i) && ua.match(/Silk/i)) || (ua.match(/AppleWebKit/i) && ua.match(/Silk/i) && !ua.match(/Playstation Vita/i))) { 70 | // if user agent is a Kindle or Kindle Fire 71 | return 'tablet'; 72 | } else if (ua.match(/GT-P10|SC-01C|SHW-M180S|SGH-T849|SCH-I800|SHW-M180L|SPH-P100|SGH-I987|zt180|HTC( Flyer|_Flyer)|Sprint ATP51|ViewPad7|pandigital(sprnova|nova)|Ideos S7|Dell Streak 7|Advent Vega|A101IT|A70BHT|MID7015|Next2|nook/i) || (ua.match(/MB511/i) && ua.match(/RUTEM/i))) { 73 | // if user agent is a pre Android 3.0 Tablet 74 | return 'tablet'; 75 | } else if (ua.match(/BOLT|Fennec|Iris|Maemo|Minimo|Mobi|mowser|NetFront|Novarra|Prism|RX-34|Skyfire|Tear|XV6875|XV6975|Google Wireless Transcoder/i)) { 76 | // if user agent is unique phone User Agent 77 | return 'phone'; 78 | } else if (ua.match(/Opera/i) && ua.match(/Windows NT 5/i) && ua.match(/HTC|Xda|Mini|Vario|SAMSUNG\-GT\-i8000|SAMSUNG\-SGH\-i9/i)) { 79 | // if user agent is an odd Opera User Agent - http://goo.gl/nK90K 80 | return 'phone'; 81 | } else if ((ua.match(/Windows (NT|XP|ME|9)/) && !ua.match(/Phone/i)) && !ua.match(/Bot|Spider|ia_archiver|NewsGator/i) || ua.match(/Win( ?9|NT)/i)) { 82 | // if user agent is Windows Desktop 83 | return 'desktop'; 84 | } else if (ua.match(/Macintosh|PowerPC/i) && !ua.match(/Silk/i)) { 85 | // if agent is Mac Desktop 86 | return 'desktop'; 87 | } else if (ua.match(/Linux/i) && ua.match(/X11/i) && !ua.match(/Charlotte|JobBot/i)) { 88 | // if user agent is a Linux Desktop 89 | return 'desktop'; 90 | } else if (ua.match(/CrOS/)) { 91 | // if user agent is a Chrome Book 92 | return 'desktop'; 93 | } else if (ua.match(/Solaris|SunOS|BSD/i)) { 94 | // if user agent is a Solaris, SunOS, BSD Desktop 95 | return 'desktop'; 96 | } else if (ua.match(/Mozilla\/5\.0 \(\)|jack|Applebot|FlipboardProxy|Go 1.1 package|HTMLParser|simplereach|python-requests|ShowyouBot|MetaURI|nineconnections|(^Java\/[0-9._]*)|Commons-HttpClient|InAGist|HTTP-Java-Client|curl|Wget|Bot|B-O-T|Crawler|Spider|Spyder|Yahoo|ia_archiver|Covario-IDS|findlinks|DataparkSearch|larbin|Mediapartners-Google|NG-Search|Snappy|Teoma|Jeeves|Charlotte|NewsGator|TinEye|Cerberian|SearchSight|Zao|Scrubby|Qseero|PycURL|Pompos|oegp|SBIder|yoogliFetchAgent|yacy|webcollage|VYU2|voyager|updated|truwoGPS|StackRambler|Sqworm|silk|semanticdiscovery|ScoutJet|Nymesis|NetResearchServer|MVAClient|mogimogi|Mnogosearch|Arachmo|Accoona|holmes|htdig|ichiro|webis|LinkWalker|lwp-trivial|facebookexternalhit|monit\/|ELB-HealthChecker\/|JobBot|GoogleCloudMonitoring/i) && !ua.match(/phone|Playstation/i)) { 97 | // if user agent is a BOT/Crawler/Spider 98 | return self.options.botUserAgentDeviceType; 99 | } else { 100 | // Otherwise assume it is a phone Device 101 | return self.options.unknownUserAgentDeviceType; 102 | } 103 | }; 104 | } 105 | 106 | function parse(useragent, options) { 107 | var parser = new DeviceParser(useragent, options); 108 | var type = parser.get_type(); 109 | var model = parser.get_model(); 110 | 111 | var device = { 112 | parser: parser, // to expose the device parser object to the running app 113 | type: type, 114 | model: model, 115 | is: function (t) { 116 | return type === t; 117 | } 118 | }; 119 | 120 | return device; 121 | } 122 | 123 | exports = module.exports = parse; 124 | exports.useragent_is = parse; // for backwards compatibility 125 | exports.version = require('../package').version; 126 | exports.Parser = DeviceParser; 127 | -------------------------------------------------------------------------------- /test/not_default_options_test.js: -------------------------------------------------------------------------------- 1 | var device = require('../lib/device.js'), 2 | assert = require('assert'); 3 | 4 | describe('device', function () { 5 | describe('deprecated useragent_is method', function () { 6 | it('should return the same', function () { 7 | var mydevice = device.useragent_is('dsfglkfjawflkehf'); 8 | assert.equal(mydevice.type, 'phone'); 9 | }); 10 | }); 11 | 12 | describe('unknown user-agent',function(){ 13 | it('should get phone (default one)', function(){ 14 | var mydevice = device('dsfglkfjawflkehf'); 15 | assert.equal(mydevice.type, 'phone'); 16 | }); 17 | }); 18 | 19 | describe('unknown user-agent configured to return desktop',function(){ 20 | it('should get desktop', function(){ 21 | var mydevice = device('dsfglkfjawflkehf', { unknownUserAgentDeviceType: 'desktop' }); 22 | assert.equal(mydevice.type, 'desktop'); 23 | }); 24 | }); 25 | 26 | describe('unknown user-agent configured to return tablet',function(){ 27 | it('should get tablet', function(){ 28 | var mydevice = device('dsfglkfjawflkehf', { unknownUserAgentDeviceType: 'tablet' }); 29 | assert.equal(mydevice.type, 'tablet'); 30 | }); 31 | }); 32 | 33 | describe('unknown user-agent configured to return bot',function(){ 34 | it('should get bot', function(){ 35 | var mydevice = device('dsfglkfjawflkehf', { unknownUserAgentDeviceType: 'bot' }); 36 | assert.equal(mydevice.type, 'bot'); 37 | }); 38 | }); 39 | 40 | describe('unknown user-agent configured to return tv',function(){ 41 | it('should get tv', function(){ 42 | var mydevice = device('dsfglkfjawflkehf', { unknownUserAgentDeviceType: 'tv' }); 43 | assert.equal(mydevice.type, 'tv'); 44 | }); 45 | }); 46 | 47 | describe('with no user-agent',function(){ 48 | it('should get desktop', function(){ 49 | var mydevice = device(''); 50 | assert.equal(mydevice.type, 'desktop'); 51 | }); 52 | }); 53 | 54 | describe('with no user-agent',function(){ 55 | it('should get desktop', function(){ 56 | var mydevice = device(null); 57 | assert.equal(mydevice.type, 'desktop'); 58 | }); 59 | }); 60 | 61 | describe('with no user-agent',function(){ 62 | it('should get desktop', function(){ 63 | var mydevice = device(undefined); 64 | assert.equal(mydevice.type, 'desktop'); 65 | }); 66 | }); 67 | 68 | describe('with no user-agent and configured to return phone',function(){ 69 | it('should get phone', function(){ 70 | var mydevice = device(null, { emptyUserAgentDeviceType: 'phone' }); 71 | assert.equal(mydevice.type, 'phone'); 72 | }); 73 | }); 74 | 75 | describe('with no user-agent and configured to return tablet',function(){ 76 | it('should get tablet', function(){ 77 | var mydevice = device(null, { emptyUserAgentDeviceType: 'tablet' }); 78 | assert.equal(mydevice.type, 'tablet'); 79 | }); 80 | }); 81 | 82 | describe('with no user-agent and configured to return tv',function(){ 83 | it('should get tv', function(){ 84 | var mydevice = device(null, { emptyUserAgentDeviceType: 'tv' }); 85 | assert.equal(mydevice.type, 'tv'); 86 | }); 87 | }); 88 | 89 | describe('with no user-agent and configured to return bot',function(){ 90 | it('should get bot', function(){ 91 | var mydevice = device(null, { emptyUserAgentDeviceType: 'bot' }); 92 | assert.equal(mydevice.type, 'bot'); 93 | }); 94 | }); 95 | 96 | describe('with bot user agent and configured to return desktop', function(){ 97 | it('should get desktop', function(){ 98 | var mydevice = device('Bot', { botUserAgentDeviceType: 'desktop' }); 99 | assert.equal(mydevice.type, 'desktop'); 100 | }) 101 | }); 102 | 103 | describe('with bot user agent and configured to return phone', function(){ 104 | it('should get phone', function(){ 105 | var mydevice = device('Bot', { botUserAgentDeviceType: 'phone' }); 106 | assert.equal(mydevice.type, 'phone'); 107 | }) 108 | }); 109 | 110 | describe('with bot user agent and configured to return tablet', function(){ 111 | it('should get tablet', function(){ 112 | var mydevice = device('Bot', { botUserAgentDeviceType: 'tablet' }); 113 | assert.equal(mydevice.type, 'tablet'); 114 | }) 115 | }); 116 | 117 | describe('with bot user agent and configured to return tv', function(){ 118 | it('should get tv', function(){ 119 | var mydevice = device('Bot', { botUserAgentDeviceType: 'tv' }); 120 | assert.equal(mydevice.type, 'tv'); 121 | }) 122 | }); 123 | 124 | describe('with car user agent and configured to return desktop', function(){ 125 | it('should get desktop', function(){ 126 | var mydevice = device('QtCarBrowser', { carUserAgentDeviceType: 'desktop' }); 127 | assert.equal(mydevice.type, 'desktop'); 128 | }) 129 | }); 130 | 131 | describe('with car user agent and configured to return phone', function(){ 132 | it('should get phone', function(){ 133 | var mydevice = device('QtCarBrowser', { carUserAgentDeviceType: 'phone' }); 134 | assert.equal(mydevice.type, 'phone'); 135 | }) 136 | }); 137 | 138 | describe('with car user agent and configured to return tablet', function(){ 139 | it('should get tablet', function(){ 140 | var mydevice = device('QtCarBrowser', { carUserAgentDeviceType: 'tablet' }); 141 | assert.equal(mydevice.type, 'tablet'); 142 | }) 143 | }); 144 | 145 | describe('with car user agent and configured to return tv', function(){ 146 | it('should get tv', function(){ 147 | var mydevice = device('QtCarBrowser', { carUserAgentDeviceType: 'tv' }); 148 | assert.equal(mydevice.type, 'tv'); 149 | }) 150 | }); 151 | 152 | describe('with user-agent of google nexus 10 and parse enabled', function () { 153 | it('should get nexus 10 as device name', function () { 154 | var mydevice = device('Mozilla/5.0 (Linux; Android 4.3; Nexus 10 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2307.2 Safari/537.36', { parseUserAgent: true }); 155 | assert.equal(mydevice.model, 'Asus Nexus 10'); 156 | }) 157 | }); 158 | 159 | describe('with user-agent of google nexus 10 and parse disabled', function () { 160 | it('should get empty string as device name', function () { 161 | var mydevice = device('Mozilla/5.0 (Linux; Android 4.3; Nexus 10 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2307.2 Safari/537.36', { parseUserAgent: false }); 162 | assert.equal(mydevice.model, ''); 163 | }) 164 | }); 165 | }); -------------------------------------------------------------------------------- /test/device_tv_test.js: -------------------------------------------------------------------------------- 1 | var device = require('../lib/device.js'), 2 | assert = require('assert'); 3 | 4 | describe('device', function() { 5 | describe('1.Kylo Browser',function(){ 6 | it('should get device type tv', function(){ 7 | var mydevice = device('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100222 Firefox/3.6 Kylo/0.8.4.74873'); 8 | assert.equal(mydevice.type, 'tv'); 9 | }); 10 | }); 11 | describe('2.Logitech Revue',function(){ 12 | it('should get device type tv', function(){ 13 | var mydevice = device('Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Large Screen Safari/533.4 GoogleTV/b54202'); 14 | assert.equal(mydevice.type, 'tv'); 15 | }); 16 | }); 17 | describe('3.Nintendo Wii',function(){ 18 | it('should get device type tv', function(){ 19 | var mydevice = device('Opera/9.00 (Nintendo Wii'); 20 | assert.equal(mydevice.type, 'tv'); 21 | }); 22 | }); 23 | describe('4.Nintendo Wii',function(){ 24 | it('should get device type tv', function(){ 25 | var mydevice = device('Opera/9.30 (Nintendo Wii; U; ; 2047-7; en)'); 26 | assert.equal(mydevice.type, 'tv'); 27 | }); 28 | }); 29 | describe('5.Nintendo Wii',function(){ 30 | it('should get device type tv', function(){ 31 | var mydevice = device('Opera/9.10 (Nintendo Wii; U; ; 1621; en)'); 32 | assert.equal(mydevice.type, 'tv'); 33 | }); 34 | }); 35 | describe('6.Nintendo Wii',function(){ 36 | it('should get device type tv', function(){ 37 | var mydevice = device('Opera/9.00 (Nintendo Wii'); 38 | assert.equal(mydevice.type, 'tv'); 39 | }); 40 | }); 41 | describe('7.Nintendo Wii',function(){ 42 | it('should get device type tv', function(){ 43 | var mydevice = device('Opera/9.30 (Nintendo Wii; U; ; 2047-7; en)'); 44 | assert.equal(mydevice.type, 'tv'); 45 | }); 46 | }); 47 | describe('8.Nintendo Wii',function(){ 48 | it('should get device type tv', function(){ 49 | var mydevice = device('Opera/9.10 (Nintendo Wii; U; ; 1621; en)'); 50 | assert.equal(mydevice.type, 'tv'); 51 | }); 52 | }); 53 | describe('9.Nintendo Wii',function(){ 54 | it('should get device type tv', function(){ 55 | var mydevice = device('wii libnup/1.0'); 56 | assert.equal(mydevice.type, 'tv'); 57 | }); 58 | }); 59 | describe('10.Nintendo Wii',function(){ 60 | it('should get device type tv', function(){ 61 | var mydevice = device('Opera/9.30 (Nintendo Wii; U; ; 2047-7; en)'); 62 | assert.equal(mydevice.type, 'tv'); 63 | }); 64 | }); 65 | describe('11.Nintendo Wii',function(){ 66 | it('should get device type tv', function(){ 67 | var mydevice = device('Opera/9.10 (Nintendo Wii; U; ; 1621; en)'); 68 | assert.equal(mydevice.type, 'tv'); 69 | }); 70 | }); 71 | describe('12.Philips Net TV',function(){ 72 | it('should get device type tv', function(){ 73 | var mydevice = device('Opera/9.80 (Linux mips ; U; HbbTV/1.1.1 (; Philips; ; ; ; ) CE-HTML/1.0 NETTV/3.1.0; en) Presto/2.6.33 Version/10.70'); 74 | assert.equal(mydevice.type, 'tv'); 75 | }); 76 | }); 77 | describe('13.Philips Net TV',function(){ 78 | it('should get device type tv', function(){ 79 | var mydevice = device('Opera/9.80 (Linux armv6l ; U; CE-HTML/1.0 NETTV/3.0.1;; en) Presto/2.6.33 Version/10.60'); 80 | assert.equal(mydevice.type, 'tv'); 81 | }); 82 | }); 83 | describe('14.Philips Net TV',function(){ 84 | it('should get device type tv', function(){ 85 | var mydevice = device('Opera/9.70 (Linux armv6l ; U; CE-HTML/1.0 NETTV/2.0.2; en) Presto/2.2.1'); 86 | assert.equal(mydevice.type, 'tv'); 87 | }); 88 | }); 89 | describe('15.Philips Net TV',function(){ 90 | it('should get device type tv', function(){ 91 | var mydevice = device('Opera/9.70 (Linux mips ; U; CE-HTML/1.0 (); en) Presto/2.2.1'); 92 | assert.equal(mydevice.type, 'tv'); 93 | }); 94 | }); 95 | describe('16.Philips Net TV',function(){ 96 | it('should get device type tv', function(){ 97 | var mydevice = device('Opera 9.50 (Linux Mips; U; CE-HTML/1.0 (); en)'); 98 | assert.equal(mydevice.type, 'tv'); 99 | }); 100 | }); 101 | describe('17.Samsung SmartTV',function(){ 102 | it('should get device type tv', function(){ 103 | var mydevice = device('Mozilla/5.0 (SmartHub; SMART-TV; U; Linux/SmartTV) AppleWebKit/531.2+ (KHTML, Like Gecko) WebBrowser/1.0 SmartTV Safari/531.2+'); 104 | assert.equal(mydevice.type, 'tv'); 105 | }); 106 | }); 107 | describe('18.Sony Internet Box NSZGT1',function(){ 108 | it('should get device type tv', function(){ 109 | var mydevice = device('Mozilla/5.0 (X11; U: Linux i686; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Large Screen Safari/533.4 GoogleTV/162671'); 110 | assert.equal(mydevice.type, 'tv'); 111 | }); 112 | }); 113 | describe('19.Sony Playstation 3',function(){ 114 | it('should get device type tv', function(){ 115 | var mydevice = device('Mozilla/5.0 (PLAYSTATION 3; 3.55)'); 116 | assert.equal(mydevice.type, 'tv'); 117 | }); 118 | }); 119 | describe('20.Sony Playstation 3',function(){ 120 | it('should get device type tv', function(){ 121 | var mydevice = device('Mozilla/5.0 (PLAYSTATION 3; 2.00)'); 122 | assert.equal(mydevice.type, 'tv'); 123 | }); 124 | }); 125 | describe('21.Sony Playstation 3',function(){ 126 | it('should get device type tv', function(){ 127 | var mydevice = device('Mozilla/5.0 (PLAYSTATION 3; 1.90)'); 128 | assert.equal(mydevice.type, 'tv'); 129 | }); 130 | }); 131 | describe('22.Sony Playstation 3',function(){ 132 | it('should get device type tv', function(){ 133 | var mydevice = device('Mozilla/5.0 (PLAYSTATION 3; 1.70)'); 134 | assert.equal(mydevice.type, 'tv'); 135 | }); 136 | }); 137 | describe('23.Sony Playstation 3',function(){ 138 | it('should get device type tv', function(){ 139 | var mydevice = device('Mozilla/5.0 (PLAYSTATION 3; 1.5)'); 140 | assert.equal(mydevice.type, 'tv'); 141 | }); 142 | }); 143 | describe('24.Sony Playstation 3',function(){ 144 | it('should get device type tv', function(){ 145 | var mydevice = device('Mozilla/5.0 (PLAYSTATION 3; 1.10)'); 146 | assert.equal(mydevice.type, 'tv'); 147 | }); 148 | }); 149 | describe('25.Sony Playstation 3',function(){ 150 | it('should get device type tv', function(){ 151 | var mydevice = device('Mozilla/5.0 (PLAYSTATION 3; 1.00)'); 152 | assert.equal(mydevice.type, 'tv'); 153 | }); 154 | }); 155 | describe('26.Sony Playstation 3',function(){ 156 | it('should get device type tv', function(){ 157 | var mydevice = device('Mozilla/4.0 (PS3 (PlayStation 3); 1.00)'); 158 | assert.equal(mydevice.type, 'tv'); 159 | }); 160 | }); 161 | describe('27.HbbTV smart tv', function () { 162 | it('should get device type tv', function () { 163 | var mydevice = device('Opera/9.80 (Linux armv7l; HbbTV/1.1.1 (; Sony; KDL32W655A; PKG3.802EUA; 2013;); ) Presto/2.12.362 Version/12.11'); 164 | assert.equal(mydevice.type, 'tv'); 165 | }); 166 | }); 167 | describe('28.Playstation 4', function () { 168 | it('should get device type tv', function () { 169 | var mydevice = device('Mozilla/5.0 (PlayStation 4 1.000) AppleWebKit/536.26 (KHTML, like Gecko)'); 170 | assert.equal(mydevice.type, 'tv'); 171 | }); 172 | }); 173 | describe('29.Chromecast', function () { 174 | it('should get device type tv', function () { 175 | var mydevice = device('CrKey'); 176 | assert.equal(mydevice.type, 'tv'); 177 | }); 178 | }); 179 | describe('30.Samsung smart tv', function () { 180 | it('should get device type tv', function () { 181 | var mydevice = device('Mozilla/5.0 (SMART-TV; Linux; Tizen 2.3) AppleWebkit/538.1 (KHTML, like Gecko) SamsungBrowser/1.0 TV Safari/538.1'); 182 | assert.equal(mydevice.type, 'tv'); 183 | }); 184 | }); 185 | describe('TV device type check with is method', function () { 186 | it('should get true', function () { 187 | var mydevice = device('PlayStation 3'); 188 | assert.equal(mydevice.is('tv'), true); 189 | }); 190 | }); 191 | }); -------------------------------------------------------------------------------- /test/device_bot_phone_test.js: -------------------------------------------------------------------------------- 1 | var device = require('../lib/device.js'), 2 | assert = require('assert'); 3 | 4 | describe('device', function() { 5 | describe('1.Accoona-AI-Agent 1.1.2',function(){ 6 | it('should get device type bot', function(){ 7 | var mydevice = device('Accoona-AI-Agent/1.1.2'); 8 | assert.equal(mydevice.type, 'bot'); 9 | }); 10 | }); 11 | describe('2.Arachmo',function(){ 12 | it('should get device type bot', function(){ 13 | var mydevice = device('Mozilla/4.0 (compatible; Arachmo)'); 14 | assert.equal(mydevice.type, 'bot'); 15 | }); 16 | }); 17 | describe('3.B-l-i-t-z-B-O-T',function(){ 18 | it('should get device type bot', function(){ 19 | var mydevice = device('Mozilla/4.0 (compatible; B-l-i-t-z-B-O-T)'); 20 | assert.equal(mydevice.type, 'bot'); 21 | }); 22 | }); 23 | describe('4.Cerberian Drtrs 3.2',function(){ 24 | it('should get device type bot', function(){ 25 | var mydevice = device('Mozilla/4.0 (compatible; Cerberian Drtrs Version-3.2-Build-1)'); 26 | assert.equal(mydevice.type, 'bot'); 27 | }); 28 | }); 29 | describe('5.Cerberian Drtrs 3.2',function(){ 30 | it('should get device type bot', function(){ 31 | var mydevice = device('Mozilla/4.0 (compatible; Cerberian Drtrs Version-3.2-Build-0)'); 32 | assert.equal(mydevice.type, 'bot'); 33 | }); 34 | }); 35 | describe('6.Charlotte 0.9t',function(){ 36 | it('should get device type bot', function(){ 37 | var mydevice = device('Mozilla/5.0 (compatible; Charlotte/0.9t; http://www.searchme.com/support/)'); 38 | assert.equal(mydevice.type, 'bot'); 39 | }); 40 | }); 41 | describe('7.Charlotte 0.9t',function(){ 42 | it('should get device type bot', function(){ 43 | var mydevice = device('Mozilla/5.0 (compatible; Charlotte/0.9t; +http://www.searchme.com/support/)'); 44 | assert.equal(mydevice.type, 'bot'); 45 | }); 46 | }); 47 | describe('8.Charlotte 1.0b',function(){ 48 | it('should get device type bot', function(){ 49 | var mydevice = device('Mozilla/5.0 (compatible; Charlotte/1.0b; http://www.searchme.com/support/)'); 50 | assert.equal(mydevice.type, 'bot'); 51 | }); 52 | }); 53 | describe('9.Charlotte 1.0t',function(){ 54 | it('should get device type bot', function(){ 55 | var mydevice = device('Mozilla/5.0 (compatible; Charlotte/1.0t; http://www.searchme.com/support/)'); 56 | assert.equal(mydevice.type, 'bot'); 57 | }); 58 | }); 59 | describe('10.Charlotte 1.1',function(){ 60 | it('should get device type bot', function(){ 61 | var mydevice = device('Mozilla/5.0 (compatible; Charlotte/1.1; http://www.searchme.com/support/)'); 62 | assert.equal(mydevice.type, 'bot'); 63 | }); 64 | }); 65 | describe('11.Holmes 3.9',function(){ 66 | it('should get device type bot', function(){ 67 | var mydevice = device('holmes/3.9 (someurl.co.cc)'); 68 | assert.equal(mydevice.type, 'bot'); 69 | }); 70 | }); 71 | describe('12.htdig 3.1.5',function(){ 72 | it('should get device type bot', function(){ 73 | var mydevice = device('htdig/3.1.5 (webmaster@online-medien.de)'); 74 | assert.equal(mydevice.type, 'bot'); 75 | }); 76 | }); 77 | describe('13.htdig 3.1.5',function(){ 78 | it('should get device type bot', function(){ 79 | var mydevice = device('htdig/3.1.5 (root@localhost)'); 80 | assert.equal(mydevice.type, 'bot'); 81 | }); 82 | }); 83 | describe('14.htdig 3.1.5',function(){ 84 | it('should get device type bot', function(){ 85 | var mydevice = device('htdig/3.1.5 (infosys@storm.rmi.org)'); 86 | assert.equal(mydevice.type, 'bot'); 87 | }); 88 | }); 89 | describe('15.htdig 3.1.5',function(){ 90 | it('should get device type bot', function(){ 91 | var mydevice = device('htdig/3.1.5'); 92 | assert.equal(mydevice.type, 'bot'); 93 | }); 94 | }); 95 | describe('16.htdig 3.1.6',function(){ 96 | it('should get device type bot', function(){ 97 | var mydevice = device('htdig/3.1.6 (unconfigured@htdig.searchengine.maintainer)'); 98 | assert.equal(mydevice.type, 'bot'); 99 | }); 100 | }); 101 | describe('17.htdig 3.1.6',function(){ 102 | it('should get device type bot', function(){ 103 | var mydevice = device('htdig/3.1.6 (mathieu.peltier@inrialpes.fr)'); 104 | assert.equal(mydevice.type, 'bot'); 105 | }); 106 | }); 107 | describe('18.ichiro 2.0',function(){ 108 | it('should get device type bot', function(){ 109 | var mydevice = device('ichiro/2.0 (ichiro@nttr.co.jp)'); 110 | assert.equal(mydevice.type, 'bot'); 111 | }); 112 | }); 113 | describe('19.igdeSpyder',function(){ 114 | it('should get device type bot', function(){ 115 | var mydevice = device('igdeSpyder (compatible; igde.ru; +http://igde.ru/doc/tech.html)'); 116 | assert.equal(mydevice.type, 'bot'); 117 | }); 118 | }); 119 | describe('20.L.webis 0.87',function(){ 120 | it('should get device type bot', function(){ 121 | var mydevice = device('L.webis/0.87 (http://webalgo.iit.cnr.it/index.php?pg=lwebis)'); 122 | assert.equal(mydevice.type, 'bot'); 123 | }); 124 | }); 125 | describe('21.LinkWalker',function(){ 126 | it('should get device type bot', function(){ 127 | var mydevice = device('LinkWalker'); 128 | assert.equal(mydevice.type, 'bot'); 129 | }); 130 | }); 131 | describe('22.LinkWalker 2.0',function(){ 132 | it('should get device type bot', function(){ 133 | var mydevice = device('LinkWalker/2.0'); 134 | assert.equal(mydevice.type, 'bot'); 135 | }); 136 | }); 137 | describe('23.lwp-trivial 1.33',function(){ 138 | it('should get device type bot', function(){ 139 | var mydevice = device('lwp-trivial/1.33'); 140 | assert.equal(mydevice.type, 'bot'); 141 | }); 142 | }); 143 | describe('24.lwp-trivial 1.35',function(){ 144 | it('should get device type bot', function(){ 145 | var mydevice = device('lwp-trivial/1.35'); 146 | assert.equal(mydevice.type, 'bot'); 147 | }); 148 | }); 149 | describe('25.lwp-trivial 1.36',function(){ 150 | it('should get device type bot', function(){ 151 | var mydevice = device('lwp-trivial/1.36'); 152 | assert.equal(mydevice.type, 'bot'); 153 | }); 154 | }); 155 | describe('26.lwp-trivial 1.38',function(){ 156 | it('should get device type bot', function(){ 157 | var mydevice = device('lwp-trivial/1.38'); 158 | assert.equal(mydevice.type, 'bot'); 159 | }); 160 | }); 161 | describe('27.lwp-trivial 1.41',function(){ 162 | it('should get device type bot', function(){ 163 | var mydevice = device('lwp-trivial/1.41'); 164 | assert.equal(mydevice.type, 'bot'); 165 | }); 166 | }); 167 | describe('28.Mnogosearch 3.1.21',function(){ 168 | it('should get device type bot', function(){ 169 | var mydevice = device('Mnogosearch-3.1.21'); 170 | assert.equal(mydevice.type, 'bot'); 171 | }); 172 | }); 173 | describe('29.mogimogi 1.0',function(){ 174 | it('should get device type bot', function(){ 175 | var mydevice = device('mogimogi/1.0'); 176 | assert.equal(mydevice.type, 'bot'); 177 | }); 178 | }); 179 | describe('30.MVAClient',function(){ 180 | it('should get device type bot', function(){ 181 | var mydevice = device('MVAClient'); 182 | assert.equal(mydevice.type, 'bot'); 183 | }); 184 | }); 185 | describe('31.NetResearchServer',function(){ 186 | it('should get device type bot', function(){ 187 | var mydevice = device('NetResearchServer(http://www.look.com)'); 188 | assert.equal(mydevice.type, 'bot'); 189 | }); 190 | }); 191 | describe('32.Nymesis 1.0',function(){ 192 | it('should get device type bot', function(){ 193 | var mydevice = device('Nymesis/1.0 (http://nymesis.com)'); 194 | assert.equal(mydevice.type, 'bot'); 195 | }); 196 | }); 197 | describe('33.oegp 1.3.0',function(){ 198 | it('should get device type bot', function(){ 199 | var mydevice = device('oegp v. 1.3.0'); 200 | assert.equal(mydevice.type, 'bot'); 201 | }); 202 | }); 203 | describe('34.Pompos 1.1',function(){ 204 | it('should get device type bot', function(){ 205 | var mydevice = device('Pompos/1.1 http://pompos.iliad.fr'); 206 | assert.equal(mydevice.type, 'bot'); 207 | }); 208 | }); 209 | describe('35.Pompos 1.2',function(){ 210 | it('should get device type bot', function(){ 211 | var mydevice = device('Pompos/1.2 http://pompos.iliad.fr'); 212 | assert.equal(mydevice.type, 'bot'); 213 | }); 214 | }); 215 | describe('36.Pompos 1.3',function(){ 216 | it('should get device type bot', function(){ 217 | var mydevice = device('Pompos/1.3 http://dir.com/pompos.html'); 218 | assert.equal(mydevice.type, 'bot'); 219 | }); 220 | }); 221 | describe('37.PycURL',function(){ 222 | it('should get device type bot', function(){ 223 | var mydevice = device('PycURL'); 224 | assert.equal(mydevice.type, 'bot'); 225 | }); 226 | }); 227 | describe('38.PycURL 7.13.2',function(){ 228 | it('should get device type bot', function(){ 229 | var mydevice = device('PycURL/7.13.2'); 230 | assert.equal(mydevice.type, 'bot'); 231 | }); 232 | }); 233 | describe('39.PycURL 7.15.5',function(){ 234 | it('should get device type bot', function(){ 235 | var mydevice = device('PycURL/7.15.5'); 236 | assert.equal(mydevice.type, 'bot'); 237 | }); 238 | }); 239 | describe('40.PycURL 7.16.4',function(){ 240 | it('should get device type bot', function(){ 241 | var mydevice = device('PycURL/7.16.4'); 242 | assert.equal(mydevice.type, 'bot'); 243 | }); 244 | }); 245 | describe('41.PycURL 7.18.0',function(){ 246 | it('should get device type bot', function(){ 247 | var mydevice = device('PycURL/7.18.0'); 248 | assert.equal(mydevice.type, 'bot'); 249 | }); 250 | }); 251 | describe('42.PycURL 7.18.2',function(){ 252 | it('should get device type bot', function(){ 253 | var mydevice = device('PycURL/7.18.2'); 254 | assert.equal(mydevice.type, 'bot'); 255 | }); 256 | }); 257 | describe('43.PycURL 7.19.0',function(){ 258 | it('should get device type bot', function(){ 259 | var mydevice = device('PycURL/7.19.0'); 260 | assert.equal(mydevice.type, 'bot'); 261 | }); 262 | }); 263 | describe('44.PycURL 7.19.3',function(){ 264 | it('should get device type bot', function(){ 265 | var mydevice = device('PycURL/7.19.3'); 266 | assert.equal(mydevice.type, 'bot'); 267 | }); 268 | }); 269 | describe('45.PycURL 7.19.5',function(){ 270 | it('should get device type bot', function(){ 271 | var mydevice = device('PycURL/7.19.5'); 272 | assert.equal(mydevice.type, 'bot'); 273 | }); 274 | }); 275 | describe('46.PycURL 7.19.7',function(){ 276 | it('should get device type bot', function(){ 277 | var mydevice = device('PycURL/7.19.7'); 278 | assert.equal(mydevice.type, 'bot'); 279 | }); 280 | }); 281 | describe('47.Qseero 1.0.0',function(){ 282 | it('should get device type bot', function(){ 283 | var mydevice = device('Qseero v1.0.0'); 284 | assert.equal(mydevice.type, 'bot'); 285 | }); 286 | }); 287 | describe('48.SBIder 0.8-dev',function(){ 288 | it('should get device type bot', function(){ 289 | var mydevice = device('SBIder/0.8-dev (SBIder; http://www.sitesell.com/sbider.html; http://support.sitesell.com/contact-support.html)'); 290 | assert.equal(mydevice.type, 'bot'); 291 | }); 292 | }); 293 | describe('49.ScoutJet',function(){ 294 | it('should get device type bot', function(){ 295 | var mydevice = device('Mozilla/5.0 (compatible; ScoutJet; http://www.scoutjet.com/)'); 296 | assert.equal(mydevice.type, 'bot'); 297 | }); 298 | }); 299 | describe('50.Scrubby 2.1',function(){ 300 | it('should get device type bot', function(){ 301 | var mydevice = device('Scrubby/2.1 (http://www.scrubtheweb.com/)'); 302 | assert.equal(mydevice.type, 'bot'); 303 | }); 304 | }); 305 | describe('51.Scrubby 2.1',function(){ 306 | it('should get device type bot', function(){ 307 | var mydevice = device('Mozilla/5.0 (compatible; Scrubby/2.1; +http://www.scrubtheweb.com/abs/meta-check.html)'); 308 | assert.equal(mydevice.type, 'bot'); 309 | }); 310 | }); 311 | describe('52.Scrubby 2.2',function(){ 312 | it('should get device type bot', function(){ 313 | var mydevice = device('Scrubby/2.2 (http://www.scrubtheweb.com/)'); 314 | assert.equal(mydevice.type, 'bot'); 315 | }); 316 | }); 317 | describe('53.Scrubby 2.2',function(){ 318 | it('should get device type bot', function(){ 319 | var mydevice = device('Mozilla/5.0 (compatible; Scrubby/2.2; +http://www.scrubtheweb.com/)'); 320 | assert.equal(mydevice.type, 'bot'); 321 | }); 322 | }); 323 | describe('54.Scrubby 2.2',function(){ 324 | it('should get device type bot', function(){ 325 | var mydevice = device('Mozilla/5.0 (compatible; Scrubby/2.2; http://www.scrubtheweb.com/)'); 326 | assert.equal(mydevice.type, 'bot'); 327 | }); 328 | }); 329 | describe('55.SearchSight 2.0',function(){ 330 | it('should get device type bot', function(){ 331 | var mydevice = device('SearchSight/2.0 (http://SearchSight.com/)'); 332 | assert.equal(mydevice.type, 'bot'); 333 | }); 334 | }); 335 | describe('56.semanticdiscovery 0.1',function(){ 336 | it('should get device type bot', function(){ 337 | var mydevice = device('semanticdiscovery/0.1'); 338 | assert.equal(mydevice.type, 'bot'); 339 | }); 340 | }); 341 | describe('57.silk 1.0',function(){ 342 | it('should get device type bot', function(){ 343 | var mydevice = device('silk/1.0 (+http://www.slider.com/silk.htm)/3.7'); 344 | assert.equal(mydevice.type, 'bot'); 345 | }); 346 | }); 347 | describe('58.silk 1.0',function(){ 348 | it('should get device type bot', function(){ 349 | var mydevice = device('Silk/1.0'); 350 | assert.equal(mydevice.type, 'bot'); 351 | }); 352 | }); 353 | describe('59.Sqworm 2.9.85-BETA',function(){ 354 | it('should get device type bot', function(){ 355 | var mydevice = device('Sqworm/2.9.85-BETA (beta_release; 20011115-775; i686-pc-linux-gnu)'); 356 | assert.equal(mydevice.type, 'bot'); 357 | }); 358 | }); 359 | describe('60.StackRambler 2.0',function(){ 360 | it('should get device type bot', function(){ 361 | var mydevice = device('StackRambler/2.0 (MSIE incompatible)'); 362 | assert.equal(mydevice.type, 'bot'); 363 | }); 364 | }); 365 | describe('61.StackRambler 2.0',function(){ 366 | it('should get device type bot', function(){ 367 | var mydevice = device('StackRambler/2.0'); 368 | assert.equal(mydevice.type, 'bot'); 369 | }); 370 | }); 371 | describe('62.truwoGPS 1.0',function(){ 372 | it('should get device type bot', function(){ 373 | var mydevice = device('truwoGPS/1.0 (GNU/Linux; U; i686; en-US; +http://www.lan4lano.net/browser.html )'); 374 | assert.equal(mydevice.type, 'bot'); 375 | }); 376 | }); 377 | describe('63.updated 0.1-beta',function(){ 378 | it('should get device type bot', function(){ 379 | var mydevice = device('updated/0.1-beta (updated; http://www.updated.com; updated@updated.com)'); 380 | assert.equal(mydevice.type, 'bot'); 381 | }); 382 | }); 383 | describe('64.voyager 1.0',function(){ 384 | it('should get device type bot', function(){ 385 | var mydevice = device('voyager/1.0'); 386 | assert.equal(mydevice.type, 'bot'); 387 | }); 388 | }); 389 | describe('65.VYU2',function(){ 390 | it('should get device type bot', function(){ 391 | var mydevice = device('VYU2 (GNU; OpenRISC)'); 392 | assert.equal(mydevice.type, 'bot'); 393 | }); 394 | }); 395 | describe('66.webcollage 1.114',function(){ 396 | it('should get device type bot', function(){ 397 | var mydevice = device('webcollage/1.114'); 398 | assert.equal(mydevice.type, 'bot'); 399 | }); 400 | }); 401 | describe('67.webcollage 1.117',function(){ 402 | it('should get device type bot', function(){ 403 | var mydevice = device('webcollage/1.117'); 404 | assert.equal(mydevice.type, 'bot'); 405 | }); 406 | }); 407 | describe('68.webcollage 1.125',function(){ 408 | it('should get device type bot', function(){ 409 | var mydevice = device('webcollage/1.125'); 410 | assert.equal(mydevice.type, 'bot'); 411 | }); 412 | }); 413 | describe('69.webcollage 1.129',function(){ 414 | it('should get device type bot', function(){ 415 | var mydevice = device('webcollage/1.129'); 416 | assert.equal(mydevice.type, 'bot'); 417 | }); 418 | }); 419 | describe('70.webcollage 1.93',function(){ 420 | it('should get device type bot', function(){ 421 | var mydevice = device('webcollage/1.93'); 422 | assert.equal(mydevice.type, 'bot'); 423 | }); 424 | }); 425 | describe('71.yacybot',function(){ 426 | it('should get device type bot', function(){ 427 | var mydevice = device('yacy (i386 Linux 2.6.14-1.1653_FC4smp; java 1.5.0_04; Europe/de) yacy.net'); 428 | assert.equal(mydevice.type, 'bot'); 429 | }); 430 | }); 431 | describe('72.yacybot',function(){ 432 | it('should get device type bot', function(){ 433 | var mydevice = device('yacy (i386 Linux 2.4.20-021stab028.17.777-enterprise; java 1.4.2_08; Europe/en) yacy.net'); 434 | assert.equal(mydevice.type, 'bot'); 435 | }); 436 | }); 437 | describe('73.yoogliFetchAgent 0.1',function(){ 438 | it('should get device type bot', function(){ 439 | var mydevice = device('yoogliFetchAgent/0.1'); 440 | assert.equal(mydevice.type, 'bot'); 441 | }); 442 | }); 443 | describe('74.Zao 0.1',function(){ 444 | it('should get device type bot', function(){ 445 | var mydevice = device('Zao/0.1 (http://www.kototoi.org/zao/)'); 446 | assert.equal(mydevice.type, 'bot'); 447 | }); 448 | }); 449 | describe('75.Zao 0.1',function(){ 450 | it('should get device type bot', function(){ 451 | var mydevice = device('Zao/0.1 (http://www.kototoi.org/zao/)'); 452 | assert.equal(mydevice.type, 'bot'); 453 | }); 454 | }); 455 | https://support.google.com/webmasters/answer/1061943?hl=en 456 | describe('76.Google Mobile (feature phone)', function () { 457 | it('should get device type bot', function () { 458 | var mydevice = device('SAMSUNG-SGH-E250/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 UP.Browser/6.2.3.3.c.1.101 (GUI) MMP/2.0 (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)'); 459 | assert.equal(mydevice.type, 'bot'); 460 | }); 461 | }); 462 | describe('77.Google Mobile (feature phone)', function () { 463 | it('should get device type bot', function () { 464 | var mydevice = device('DoCoMo/2.0 N905i(c100;TB;W24H16) (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)'); 465 | assert.equal(mydevice.type, 'bot'); 466 | }); 467 | }); 468 | describe('78.Google Smartphone', function () { 469 | it('should get device type bot', function () { 470 | var mydevice = device('Mozilla/5.0 (iPhone; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12F70 Safari/600.1.4 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'); 471 | assert.equal(mydevice.type, 'bot'); 472 | }); 473 | }); 474 | describe('Bot device type check with is method', function () { 475 | it('should get true', function () { 476 | var mydevice = device('Facebot'); 477 | assert.equal(mydevice.is('bot'), true); 478 | }); 479 | }); 480 | }); -------------------------------------------------------------------------------- /test/device_desktop_test.js: -------------------------------------------------------------------------------- 1 | var device = require('../lib/device.js'), 2 | assert = require('assert'); 3 | 4 | describe('device', function() { 5 | describe('1.Apple iMac',function(){ 6 | it('should get device type desktop', function(){ 7 | var mydevice = device('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22'); 8 | assert.equal(mydevice.type, 'desktop'); 9 | }); 10 | }); 11 | describe('2.Apple Mac Book Air 11.6""',function(){ 12 | it('should get device type desktop', function(){ 13 | var mydevice = device('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22'); 14 | assert.equal(mydevice.type, 'desktop'); 15 | }); 16 | }); 17 | describe('3.Apple Mac Book Pro 15""',function(){ 18 | it('should get device type desktop', function(){ 19 | var mydevice = device('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22'); 20 | assert.equal(mydevice.type, 'desktop'); 21 | }); 22 | }); 23 | describe('4.Firefox 0.9.3',function(){ 24 | it('should get device type desktop', function(){ 25 | var mydevice = device('Mozilla/5.0 (Windows; U; Win 9x 4.90; rv:1.7) Gecko/20041103 Firefox/0.9.3'); 26 | assert.equal(mydevice.type, 'desktop'); 27 | }); 28 | }); 29 | describe('5.Firefox 1.0.4',function(){ 30 | it('should get device type desktop', function(){ 31 | var mydevice = device('Mozilla/5.0 (X11; I; SunOS sun4u; en-GB; rv:1.7.8) Gecko/20050713 Firefox/1.0.4'); 32 | assert.equal(mydevice.type, 'desktop'); 33 | }); 34 | }); 35 | describe('6.Firefox 10.0a',function(){ 36 | it('should get device type desktop', function(){ 37 | var mydevice = device('Mozilla/6.0 (Macintosh; I; Intel Mac OS X 11_7_9; de-LI; rv:1.9b4) Gecko/2012010317 Firefox/10.0a4'); 38 | assert.equal(mydevice.type, 'desktop'); 39 | }); 40 | }); 41 | describe('7.Firefox 3.6',function(){ 42 | it('should get device type desktop', function(){ 43 | var mydevice = device('Mozilla/5.0(Windows; U; Windows NT 7.0; rv:1.9.2) Gecko/20100101 Firefox/3.6'); 44 | assert.equal(mydevice.type, 'desktop'); 45 | }); 46 | }); 47 | describe('8.Firefox 4',function(){ 48 | it('should get device type desktop', function(){ 49 | var mydevice = device('Mozilla/5.0 (X11; U; Linux x86_64; pl-PL; rv:2.0) Gecko/20110307 Firefox/4.0'); 50 | assert.equal(mydevice.type, 'desktop'); 51 | }); 52 | }); 53 | describe('9.Firefox 4',function(){ 54 | it('should get device type desktop', function(){ 55 | var mydevice = device('Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gecko/20110319 Firefox/4.0'); 56 | assert.equal(mydevice.type, 'desktop'); 57 | }); 58 | }); 59 | describe('10.Firefox 5',function(){ 60 | it('should get device type desktop', function(){ 61 | var mydevice = device('Mozilla/5.0 (X11; U; Linux i586; de; rv:5.0) Gecko/20100101 Firefox/5.0'); 62 | assert.equal(mydevice.type, 'desktop'); 63 | }); 64 | }); 65 | describe('11.Firefox 5',function(){ 66 | it('should get device type desktop', function(){ 67 | var mydevice = device('Mozilla/5.0 (Windows NT 5.1; U; rv:5.0) Gecko/20100101 Firefox/5.0'); 68 | assert.equal(mydevice.type, 'desktop'); 69 | }); 70 | }); 71 | describe('12.Firefox 5.0.1',function(){ 72 | it('should get device type desktop', function(){ 73 | var mydevice = device('Mozilla/5.0 (Windows NT 6.1; U; ru; rv:5.0.1.6) Gecko/20110501 Firefox/5.0.1 Firefox/5.0.1'); 74 | assert.equal(mydevice.type, 'desktop'); 75 | }); 76 | }); 77 | describe('13.Firefox 5.0a2',function(){ 78 | it('should get device type desktop', function(){ 79 | var mydevice = device('Mozilla/5.0 (X11; Linux i686 on x86_64; rv:5.0a2) Gecko/20110524 Firefox/5.0a2'); 80 | assert.equal(mydevice.type, 'desktop'); 81 | }); 82 | }); 83 | describe('14.Firefox 6',function(){ 84 | it('should get device type desktop', function(){ 85 | var mydevice = device('Mozilla/5.0 (X11; Linux i686; rv:6.0) Gecko/20100101 Firefox/6.0'); 86 | assert.equal(mydevice.type, 'desktop'); 87 | }); 88 | }); 89 | describe('15.Firefox 6',function(){ 90 | it('should get device type desktop', function(){ 91 | var mydevice = device('Mozilla/5.0 (Windows NT 6.1; rv:6.0) Gecko/20110814 Firefox/6.0'); 92 | assert.equal(mydevice.type, 'desktop'); 93 | }); 94 | }); 95 | describe('16.Firefox 9.0',function(){ 96 | it('should get device type desktop', function(){ 97 | var mydevice = device('Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:9.0) Gecko/20100101 Firefox/9.0'); 98 | assert.equal(mydevice.type, 'desktop'); 99 | }); 100 | }); 101 | describe('17.Firefox 9.0.1',function(){ 102 | it('should get device type desktop', function(){ 103 | var mydevice = device('Mozilla/5.0 (Windows NT 6.2; rv:9.0.1) Gecko/20100101 Firefox/9.0.1'); 104 | assert.equal(mydevice.type, 'desktop'); 105 | }); 106 | }); 107 | describe('18.Google Chrome 13',function(){ 108 | it('should get device type desktop', function(){ 109 | var mydevice = device('Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.33 (KHTML, like Gecko) Ubuntu/9.10 Chromium/13.0.752.0 Chrome/13.0.752.0 Safari/534.33'); 110 | assert.equal(mydevice.type, 'desktop'); 111 | }); 112 | }); 113 | describe('19.Google Chrome 14',function(){ 114 | it('should get device type desktop', function(){ 115 | var mydevice = device('Mozilla/5.0 (Macintosh; PPC Mac OS X 10_6_7) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.790.0 Safari/535.1'); 116 | assert.equal(mydevice.type, 'desktop'); 117 | }); 118 | }); 119 | describe('20.Google Chrome 15',function(){ 120 | it('should get device type desktop', function(){ 121 | var mydevice = device('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.861.0 Safari/535.2'); 122 | assert.equal(mydevice.type, 'desktop'); 123 | }); 124 | }); 125 | describe('21.Google Chrome 16',function(){ 126 | it('should get device type desktop', function(){ 127 | var mydevice = device('Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.6 (KHTML, like Gecko) Chrome/16.0.897.0 Safari/535.6'); 128 | assert.equal(mydevice.type, 'desktop'); 129 | }); 130 | }); 131 | describe('22.Google Chrome 17',function(){ 132 | it('should get device type desktop', function(){ 133 | var mydevice = device('Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.8 (KHTML, like Gecko) Chrome/17.0.940.0 Safari/535.8'); 134 | assert.equal(mydevice.type, 'desktop'); 135 | }); 136 | }); 137 | describe('23.Google Chrome 18',function(){ 138 | it('should get device type desktop', function(){ 139 | var mydevice = device('Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/18.6.872.0 Safari/535.2 UNTRUSTED/1.0 3gpp-gba UNTRUSTED/1.0'); 140 | assert.equal(mydevice.type, 'desktop'); 141 | }); 142 | }); 143 | describe('24.HTC HD7',function(){ 144 | it('should get device type desktop', function(){ 145 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; XBLWP7; ZuneWP7)|HD7'); 146 | assert.equal(mydevice.type, 'desktop'); 147 | }); 148 | }); 149 | describe('25.HTC HD7',function(){ 150 | it('should get device type desktop', function(){ 151 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; XBLWP7; ZuneWP7)|HD7'); 152 | assert.equal(mydevice.type, 'desktop'); 153 | }); 154 | }); 155 | describe('26.Intel Atom N455 Netbook',function(){ 156 | it('should get device type desktop', function(){ 157 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)'); 158 | assert.equal(mydevice.type, 'desktop'); 159 | }); 160 | }); 161 | describe('27.Internet Explorer 1.0',function(){ 162 | it('should get device type desktop', function(){ 163 | var mydevice = device('Microsoft Internet Explorer/1.0 (Windows 95)'); 164 | assert.equal(mydevice.type, 'desktop'); 165 | }); 166 | }); 167 | describe('28.Internet Explorer 1.5',function(){ 168 | it('should get device type desktop', function(){ 169 | var mydevice = device('Mozilla/1.22 (compatible; MSIE 1.5; Windows NT)'); 170 | assert.equal(mydevice.type, 'desktop'); 171 | }); 172 | }); 173 | describe('29.Internet Explorer 4.0.1',function(){ 174 | it('should get device type desktop', function(){ 175 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 4.01; Windows NT 5.0)'); 176 | assert.equal(mydevice.type, 'desktop'); 177 | }); 178 | }); 179 | describe('30.Internet Explorer 5.5',function(){ 180 | it('should get device type desktop', function(){ 181 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 5.5; Windows 95)'); 182 | assert.equal(mydevice.type, 'desktop'); 183 | }); 184 | }); 185 | describe('31.Internet Explorer 6.0',function(){ 186 | it('should get device type desktop', function(){ 187 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)'); 188 | assert.equal(mydevice.type, 'desktop'); 189 | }); 190 | }); 191 | describe('32.Internet Explorer 6.0',function(){ 192 | it('should get device type desktop', function(){ 193 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)'); 194 | assert.equal(mydevice.type, 'desktop'); 195 | }); 196 | }); 197 | describe('33.Internet Explorer 7.0',function(){ 198 | it('should get device type desktop', function(){ 199 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; Win64; x64; SV1)'); 200 | assert.equal(mydevice.type, 'desktop'); 201 | }); 202 | }); 203 | describe('34.Internet Explorer 7.0',function(){ 204 | it('should get device type desktop', function(){ 205 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322)'); 206 | assert.equal(mydevice.type, 'desktop'); 207 | }); 208 | }); 209 | describe('35.Internet Explorer 10',function(){ 210 | it('should get device type desktop', function(){ 211 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)'); 212 | assert.equal(mydevice.type, 'desktop'); 213 | }); 214 | }); 215 | describe('36.Internet Explorer 10',function(){ 216 | it('should get device type desktop', function(){ 217 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)'); 218 | assert.equal(mydevice.type, 'desktop'); 219 | }); 220 | }); 221 | describe('37.Internet Explorer 10',function(){ 222 | it('should get device type desktop', function(){ 223 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/5.0)'); 224 | assert.equal(mydevice.type, 'desktop'); 225 | }); 226 | }); 227 | describe('38.Internet Explorer 10',function(){ 228 | it('should get device type desktop', function(){ 229 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/4.0; InfoPath.2; SV1; .NET CLR 2.0.50727; WOW64)'); 230 | assert.equal(mydevice.type, 'desktop'); 231 | }); 232 | }); 233 | describe('39.Internet Explorer 10',function(){ 234 | it('should get device type desktop', function(){ 235 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/5.0)'); 236 | assert.equal(mydevice.type, 'desktop'); 237 | }); 238 | }); 239 | describe('40.Internet Explorer 10.6',function(){ 240 | it('should get device type desktop', function(){ 241 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 10.6; Windows NT 6.1; Trident/5.0; InfoPath.2; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 2.0.50727) 3gpp-gba UNTRUSTED/1.0'); 242 | assert.equal(mydevice.type, 'desktop'); 243 | }); 244 | }); 245 | describe('41.Internet Explorer 5',function(){ 246 | it('should get device type desktop', function(){ 247 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 5.00; Windows 98)'); 248 | assert.equal(mydevice.type, 'desktop'); 249 | }); 250 | }); 251 | describe('42.Internet Explorer 5',function(){ 252 | it('should get device type desktop', function(){ 253 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 5.0; Windows NT 5.0)'); 254 | assert.equal(mydevice.type, 'desktop'); 255 | }); 256 | }); 257 | describe('43.Internet Explorer 5.5',function(){ 258 | it('should get device type desktop', function(){ 259 | var mydevice = device('Mozilla/4.0 (compatible;MSIE 5.5; Windows 98)'); 260 | assert.equal(mydevice.type, 'desktop'); 261 | }); 262 | }); 263 | describe('44.Internet Explorer 5.5',function(){ 264 | it('should get device type desktop', function(){ 265 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'); 266 | assert.equal(mydevice.type, 'desktop'); 267 | }); 268 | }); 269 | describe('45.Internet Explorer 6',function(){ 270 | it('should get device type desktop', function(){ 271 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0b; Windows 98)'); 272 | assert.equal(mydevice.type, 'desktop'); 273 | }); 274 | }); 275 | describe('46.Internet Explorer 6',function(){ 276 | it('should get device type desktop', function(){ 277 | var mydevice = device('Mozilla/5.0 (Windows; U; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)'); 278 | assert.equal(mydevice.type, 'desktop'); 279 | }); 280 | }); 281 | describe('47.Internet Explorer 6',function(){ 282 | it('should get device type desktop', function(){ 283 | var mydevice = device('Mozilla/4.0 (MSIE 6.0; Windows NT 5.1)'); 284 | assert.equal(mydevice.type, 'desktop'); 285 | }); 286 | }); 287 | describe('48.Internet Explorer 7',function(){ 288 | it('should get device type desktop', function(){ 289 | var mydevice = device('Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)'); 290 | assert.equal(mydevice.type, 'desktop'); 291 | }); 292 | }); 293 | describe('49.Internet Explorer 7',function(){ 294 | it('should get device type desktop', function(){ 295 | var mydevice = device('Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 5.2)'); 296 | assert.equal(mydevice.type, 'desktop'); 297 | }); 298 | }); 299 | describe('50.Internet Explorer 7',function(){ 300 | it('should get device type desktop', function(){ 301 | var mydevice = device('Mozilla/4.0 (Windows; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)'); 302 | assert.equal(mydevice.type, 'desktop'); 303 | }); 304 | }); 305 | describe('51.Internet Explorer 8',function(){ 306 | it('should get device type desktop', function(){ 307 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)'); 308 | assert.equal(mydevice.type, 'desktop'); 309 | }); 310 | }); 311 | describe('52.Internet Explorer 8',function(){ 312 | it('should get device type desktop', function(){ 313 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322)'); 314 | assert.equal(mydevice.type, 'desktop'); 315 | }); 316 | }); 317 | describe('53.Internet Explorer 8',function(){ 318 | it('should get device type desktop', function(){ 319 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; InfoPath.2; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 2.0.50727)'); 320 | assert.equal(mydevice.type, 'desktop'); 321 | }); 322 | }); 323 | describe('54.Internet Explorer 8',function(){ 324 | it('should get device type desktop', function(){ 325 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)'); 326 | assert.equal(mydevice.type, 'desktop'); 327 | }); 328 | }); 329 | describe('55.Internet Explorer 8',function(){ 330 | it('should get device type desktop', function(){ 331 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; SLCC1; .NET CLR 1.1.4322)'); 332 | assert.equal(mydevice.type, 'desktop'); 333 | }); 334 | }); 335 | describe('56.Internet Explorer 9',function(){ 336 | it('should get device type desktop', function(){ 337 | var mydevice = device('Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)'); 338 | assert.equal(mydevice.type, 'desktop'); 339 | }); 340 | }); 341 | describe('57.Internet Explorer 9',function(){ 342 | it('should get device type desktop', function(){ 343 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; chromeframe/12.0.742.112)'); 344 | assert.equal(mydevice.type, 'desktop'); 345 | }); 346 | }); 347 | describe('58.Internet Explorer 9',function(){ 348 | it('should get device type desktop', function(){ 349 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 7.1; Trident/5.0)'); 350 | assert.equal(mydevice.type, 'desktop'); 351 | }); 352 | }); 353 | describe('59.Internet Explorer 9',function(){ 354 | it('should get device type desktop', function(){ 355 | var mydevice = device('Mozilla/5.0 ( ; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)'); 356 | assert.equal(mydevice.type, 'desktop'); 357 | }); 358 | }); 359 | describe('60.Motorola Milestone in Desktop Mode',function(){ 360 | it('should get device type desktop', function(){ 361 | var mydevice = device('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 ( .NET CLR 3.5.30729; .NET4.0C)'); 362 | assert.equal(mydevice.type, 'desktop'); 363 | }); 364 | }); 365 | describe('61.Netscape 8.0.1',function(){ 366 | it('should get device type desktop', function(){ 367 | var mydevice = device('Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.5) Gecko/20050519 Netscape/8.0.1'); 368 | assert.equal(mydevice.type, 'desktop'); 369 | }); 370 | }); 371 | describe('62.Netscape 9',function(){ 372 | it('should get device type desktop', function(){ 373 | var mydevice = device('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20070321 Netscape/9.0'); 374 | assert.equal(mydevice.type, 'desktop'); 375 | }); 376 | }); 377 | describe('63.Opera 10',function(){ 378 | it('should get device type desktop', function(){ 379 | var mydevice = device('Opera/9.80 (X11; Linux x86_64; U; en) Presto/2.2.15 Version/10.00'); 380 | assert.equal(mydevice.type, 'desktop'); 381 | }); 382 | }); 383 | describe('64.Opera 11',function(){ 384 | it('should get device type desktop', function(){ 385 | var mydevice = device('Opera/9.80 (Windows NT 6.1 x64; U; en) Presto/2.7.62 Version/11.00'); 386 | assert.equal(mydevice.type, 'desktop'); 387 | }); 388 | }); 389 | describe('65.Opera 11.01',function(){ 390 | it('should get device type desktop', function(){ 391 | var mydevice = device('Opera/9.80 (Windows NT 6.1; U; en-US) Presto/2.7.62 Version/11.01'); 392 | assert.equal(mydevice.type, 'desktop'); 393 | }); 394 | }); 395 | describe('66.Opera 11.10',function(){ 396 | it('should get device type desktop', function(){ 397 | var mydevice = device('Opera/9.80 (X11; Linux x86_64; U; bg) Presto/2.8.131 Version/11.10'); 398 | assert.equal(mydevice.type, 'desktop'); 399 | }); 400 | }); 401 | describe('67.Opera 11.11',function(){ 402 | it('should get device type desktop', function(){ 403 | var mydevice = device('Opera/9.80 (X11; Linux i686; U; es-ES) Presto/2.8.131 Version/11.11'); 404 | assert.equal(mydevice.type, 'desktop'); 405 | }); 406 | }); 407 | describe('68.Opera 11.50',function(){ 408 | it('should get device type desktop', function(){ 409 | var mydevice = device('Opera/9.80 (X11; Linux x86_64; U; fr) Presto/2.9.168 Version/11.50'); 410 | assert.equal(mydevice.type, 'desktop'); 411 | }); 412 | }); 413 | describe('69.Opera 11.51',function(){ 414 | it('should get device type desktop', function(){ 415 | var mydevice = device('Opera/9.80 (Windows NT 5.1; U; en) Presto/2.9.168 Version/11.51'); 416 | assert.equal(mydevice.type, 'desktop'); 417 | }); 418 | }); 419 | describe('70.Opera 11.52',function(){ 420 | it('should get device type desktop', function(){ 421 | var mydevice = device('Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; fr) Presto/2.9.168 Version/11.52'); 422 | assert.equal(mydevice.type, 'desktop'); 423 | }); 424 | }); 425 | describe('71.Opera 12',function(){ 426 | it('should get device type desktop', function(){ 427 | var mydevice = device('Opera/9.80 (Windows NT 6.1; U; es-ES) Presto/2.9.181 Version/12.00'); 428 | assert.equal(mydevice.type, 'desktop'); 429 | }); 430 | }); 431 | describe('72.Opera 9.9',function(){ 432 | it('should get device type desktop', function(){ 433 | var mydevice = device('Opera/9.99 (Windows NT 5.1; U; pl) Presto/9.9.9'); 434 | assert.equal(mydevice.type, 'desktop'); 435 | }); 436 | }); 437 | describe('73.Safari 4.1',function(){ 438 | it('should get device type desktop', function(){ 439 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_7; en-us) AppleWebKit/533.4 (KHTML, like Gecko) Version/4.1 Safari/533.4'); 440 | assert.equal(mydevice.type, 'desktop'); 441 | }); 442 | }); 443 | describe('74.Safari 5',function(){ 444 | it('should get device type desktop', function(){ 445 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us) AppleWebKit/534.1+ (KHTML, like Gecko) Version/5.0 Safari/533.16'); 446 | assert.equal(mydevice.type, 'desktop'); 447 | }); 448 | }); 449 | describe('75.Safari 5.0.1',function(){ 450 | it('should get device type desktop', function(){ 451 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; th-th) AppleWebKit/533.17.8 (KHTML, like Gecko) Version/5.0.1 Safari/533.17.8'); 452 | assert.equal(mydevice.type, 'desktop'); 453 | }); 454 | }); 455 | describe('76.Safari 5.0.2',function(){ 456 | it('should get device type desktop', function(){ 457 | var mydevice = device('Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-HK) AppleWebKit/533.18.1 (KHTML, like Gecko) Version/5.0.2 Safari/533.18.5'); 458 | assert.equal(mydevice.type, 'desktop'); 459 | }); 460 | }); 461 | describe('77.Safari 5.0.3',function(){ 462 | it('should get device type desktop', function(){ 463 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; en-us) AppleWebKit/534.16+ (KHTML, like Gecko) Version/5.0.3 Safari/533.19.4'); 464 | assert.equal(mydevice.type, 'desktop'); 465 | }); 466 | }); 467 | describe('78.Safari 5.0.4',function(){ 468 | it('should get device type desktop', function(){ 469 | var mydevice = device('Mozilla/5.0 (Windows; U; Windows NT 6.1; tr-TR) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27'); 470 | assert.equal(mydevice.type, 'desktop'); 471 | }); 472 | }); 473 | describe('79.Safari 5.0.4',function(){ 474 | it('should get device type desktop', function(){ 475 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; zh-cn) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27'); 476 | assert.equal(mydevice.type, 'desktop'); 477 | }); 478 | }); 479 | describe('80.Safari 5.0.5',function(){ 480 | it('should get device type desktop', function(){ 481 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; de-at) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1'); 482 | assert.equal(mydevice.type, 'desktop'); 483 | }); 484 | }); 485 | describe('81.Windows HTC Radar - Desktop Mode',function(){ 486 | it('should get device type desktop', function(){ 487 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; XBLWP7; ZuneWP7)'); 488 | assert.equal(mydevice.type, 'desktop'); 489 | }); 490 | }); 491 | describe('82.No user agent',function(){ 492 | it('should get device type desktop', function(){ 493 | var mydevice = device(undefined); 494 | assert.equal(mydevice.type, 'desktop'); 495 | }); 496 | }); 497 | describe('83.Empty user agent',function(){ 498 | it('should get device type desktop', function(){ 499 | var mydevice = device(''); 500 | assert.equal(mydevice.type, 'desktop'); 501 | }); 502 | }); 503 | describe('84.Chromebook OS',function(){ 504 | it('should get device type desktop', function(){ 505 | var mydevice = device('Mozilla/5.0 (X11; CrOS i686 0.12.433) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.77 Safari/534.30'); 506 | assert.equal(mydevice.type, 'desktop'); 507 | }); 508 | }); 509 | describe('Desktop device type check with is method', function () { 510 | it('should get true', function () { 511 | var mydevice = device('Mozilla/5.0 (X11; CrOS i686 0.12.433) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.77 Safari/534.30'); 512 | assert.equal(mydevice.is('desktop'), true); 513 | }); 514 | }); 515 | }); -------------------------------------------------------------------------------- /test/device_tablet_test.js: -------------------------------------------------------------------------------- 1 | var device = require('../lib/device.js'), 2 | assert = require('assert'); 3 | 4 | describe('device', function() { 5 | describe('1.Acer A500',function(){ 6 | it('should get device type tablet', function(){ 7 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; fr-fr; A500 Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 8 | assert.equal(mydevice.type, 'tablet'); 9 | }); 10 | }); 11 | describe('2.Acer A500',function(){ 12 | it('should get device type tablet', function(){ 13 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; en-us; A500 Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 14 | assert.equal(mydevice.type, 'tablet'); 15 | }); 16 | }); 17 | describe('3.Acer A500',function(){ 18 | it('should get device type tablet', function(){ 19 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; fr-fr; A500 Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 20 | assert.equal(mydevice.type, 'tablet'); 21 | }); 22 | }); 23 | describe('4.Acer A500',function(){ 24 | it('should get device type tablet', function(){ 25 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; en-us; A500 Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 26 | assert.equal(mydevice.type, 'tablet'); 27 | }); 28 | }); 29 | describe('5.Acer A501',function(){ 30 | it('should get device type tablet', function(){ 31 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; A501 Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 32 | assert.equal(mydevice.type, 'tablet'); 33 | }); 34 | }); 35 | describe('6.Acer A501',function(){ 36 | it('should get device type tablet', function(){ 37 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; A501 Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 38 | assert.equal(mydevice.type, 'tablet'); 39 | }); 40 | }); 41 | describe('7.Acer G100W',function(){ 42 | it('should get device type tablet', function(){ 43 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; G100W Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 44 | assert.equal(mydevice.type, 'tablet'); 45 | }); 46 | }); 47 | describe('8.Acer G100W',function(){ 48 | it('should get device type tablet', function(){ 49 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; G100W Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 50 | assert.equal(mydevice.type, 'tablet'); 51 | }); 52 | }); 53 | describe('9.Acer Iconia A100',function(){ 54 | it('should get device type tablet', function(){ 55 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2; en-us; A100 Build/HTJ85B) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 56 | assert.equal(mydevice.type, 'tablet'); 57 | }); 58 | }); 59 | describe('10.Acer Iconia A500',function(){ 60 | it('should get device type tablet', function(){ 61 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2; en-us; A500 Build/HTJ85B) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 62 | assert.equal(mydevice.type, 'tablet'); 63 | }); 64 | }); 65 | describe('11.Acer Iconia Tab A100',function(){ 66 | it('should get device type tablet', function(){ 67 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; A100 Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 68 | assert.equal(mydevice.type, 'tablet'); 69 | }); 70 | }); 71 | describe('12.Acer Iconia Tab A100',function(){ 72 | it('should get device type tablet', function(){ 73 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; A100 Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 74 | assert.equal(mydevice.type, 'tablet'); 75 | }); 76 | }); 77 | describe('13.Acer Iconia Tab A200',function(){ 78 | it('should get device type tablet', function(){ 79 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2.1; en-us; A200 Build/HTK55D) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 80 | assert.equal(mydevice.type, 'tablet'); 81 | }); 82 | }); 83 | describe('14.Acer TPA60W',function(){ 84 | it('should get device type tablet', function(){ 85 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; TPA60W Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 86 | assert.equal(mydevice.type, 'tablet'); 87 | }); 88 | }); 89 | describe('15.Acer TPA60W',function(){ 90 | it('should get device type tablet', function(){ 91 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; TPA60W Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 92 | assert.equal(mydevice.type, 'tablet'); 93 | }); 94 | }); 95 | describe('16.Amazon Kindle',function(){ 96 | it('should get device type tablet', function(){ 97 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.10) NetFront/3.3 Kindle/1.0 (screen 600x800)'); 98 | assert.equal(mydevice.type, 'tablet'); 99 | }); 100 | }); 101 | describe('17.Amazon Kindle',function(){ 102 | it('should get device type tablet', function(){ 103 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.10) NetFront/3.3 Kindle/1.0 (screen 600x800)'); 104 | assert.equal(mydevice.type, 'tablet'); 105 | }); 106 | }); 107 | describe('18.Amazon Kindle',function(){ 108 | it('should get device type tablet', function(){ 109 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.10) NetFront/3.3 Kindle/1.0 (screen 600x800)'); 110 | assert.equal(mydevice.type, 'tablet'); 111 | }); 112 | }); 113 | describe('19.Amazon Kindle 2',function(){ 114 | it('should get device type tablet', function(){ 115 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.0 (screen 600x800)'); 116 | assert.equal(mydevice.type, 'tablet'); 117 | }); 118 | }); 119 | describe('20.Amazon Kindle 2',function(){ 120 | it('should get device type tablet', function(){ 121 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.1 (screen 824x1200; rotate)'); 122 | assert.equal(mydevice.type, 'tablet'); 123 | }); 124 | }); 125 | describe('21.Amazon Kindle 2',function(){ 126 | it('should get device type tablet', function(){ 127 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.3 (screen 600x800; rotate)'); 128 | assert.equal(mydevice.type, 'tablet'); 129 | }); 130 | }); 131 | describe('22.Amazon Kindle 2',function(){ 132 | it('should get device type tablet', function(){ 133 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.5 (screen 600x800; rotate)'); 134 | assert.equal(mydevice.type, 'tablet'); 135 | }); 136 | }); 137 | describe('23.Amazon Kindle 2',function(){ 138 | it('should get device type tablet', function(){ 139 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.0 (screen 600x800)'); 140 | assert.equal(mydevice.type, 'tablet'); 141 | }); 142 | }); 143 | describe('24.Amazon Kindle 2',function(){ 144 | it('should get device type tablet', function(){ 145 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.1 (screen 824x1200; rotate)'); 146 | assert.equal(mydevice.type, 'tablet'); 147 | }); 148 | }); 149 | describe('25.Amazon Kindle 2',function(){ 150 | it('should get device type tablet', function(){ 151 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.3 (screen 600x800; rotate)'); 152 | assert.equal(mydevice.type, 'tablet'); 153 | }); 154 | }); 155 | describe('26.Amazon Kindle 2',function(){ 156 | it('should get device type tablet', function(){ 157 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.5 (screen 600x800; rotate)'); 158 | assert.equal(mydevice.type, 'tablet'); 159 | }); 160 | }); 161 | describe('27.Amazon Kindle 2',function(){ 162 | it('should get device type tablet', function(){ 163 | var mydevice = device('Mozilla/4.0 (compatible; Linux 2.6.22) NetFront/3.4 Kindle/2.0 (screen 600x800)'); 164 | assert.equal(mydevice.type, 'tablet'); 165 | }); 166 | }); 167 | describe('28.Amazon Kindle 3',function(){ 168 | it('should get device type tablet', function(){ 169 | var mydevice = device('Mozilla/5.0 (Linux; U; en-US) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) Version/4.0 Kindle/3.0 (screen 600x800)'); 170 | assert.equal(mydevice.type, 'tablet'); 171 | }); 172 | }); 173 | describe('29.Amazon Kindle 3',function(){ 174 | it('should get device type tablet', function(){ 175 | var mydevice = device('Mozilla/5.0 (Linux; U; en-US) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) Version/4.0 Kindle/3.0 (screen 600x800)'); 176 | assert.equal(mydevice.type, 'tablet'); 177 | }); 178 | }); 179 | describe('30.Amazon Kindle 3',function(){ 180 | it('should get device type tablet', function(){ 181 | var mydevice = device('Mozilla/5.0 (Linux; U; en-US) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) Version/4.0 Kindle/3.0 (screen 600X800; rotate)'); 182 | assert.equal(mydevice.type, 'tablet'); 183 | }); 184 | }); 185 | describe('31.Amazon Kindle Fire',function(){ 186 | it('should get device type tablet', function(){ 187 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; Kindle Fire Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 188 | assert.equal(mydevice.type, 'tablet'); 189 | }); 190 | }); 191 | describe('32.Amazon Kindle Fire',function(){ 192 | it('should get device type tablet', function(){ 193 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us; Silk/1.1.0-80) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16 Silk-Accelerated=true'); 194 | assert.equal(mydevice.type, 'tablet'); 195 | }); 196 | }); 197 | describe('33.Amazon Kindle Fire in Silk Mode',function(){ 198 | it('should get device type tablet', function(){ 199 | var mydevice = device('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us; Silk/1.1.0-80) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16 Silk-Accelerated=true'); 200 | assert.equal(mydevice.type, 'tablet'); 201 | }); 202 | }); 203 | describe('34.Android SDK',function(){ 204 | it('should get device type tablet', function(){ 205 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 0.5; en-us) AppleWebKit/522+ (KHTML, like Gecko) Safari/419.3'); 206 | assert.equal(mydevice.type, 'tablet'); 207 | }); 208 | }); 209 | describe('35.Android SDK',function(){ 210 | it('should get device type tablet', function(){ 211 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 0.5; en-us) AppleWebKit/522+ (KHTML, like Gecko) Safari/419.3'); 212 | assert.equal(mydevice.type, 'tablet'); 213 | }); 214 | }); 215 | describe('36.Apple iPad',function(){ 216 | it('should get device type tablet', function(){ 217 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7D11'); 218 | assert.equal(mydevice.type, 'tablet'); 219 | }); 220 | }); 221 | describe('37.Apple iPad',function(){ 222 | it('should get device type tablet', function(){ 223 | var mydevice = device('Mozilla/5.0 (iProd; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko)'); 224 | assert.equal(mydevice.type, 'tablet'); 225 | }); 226 | }); 227 | describe('38.Apple iPad',function(){ 228 | it('should get device type tablet', function(){ 229 | var mydevice = device('Mozilla/5.0 (iPad Simulator; U; CPU iPhone OS 3_2 like Mac OS X; en_us) AppleWebKit/525.18.1 (KHTML, like Gecko)'); 230 | assert.equal(mydevice.type, 'tablet'); 231 | }); 232 | }); 233 | describe('39.Apple iPad',function(){ 234 | it('should get device type tablet', function(){ 235 | var mydevice = device('Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10'); 236 | assert.equal(mydevice.type, 'tablet'); 237 | }); 238 | }); 239 | describe('40.Apple iPad',function(){ 240 | it('should get device type tablet', function(){ 241 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B367'); 242 | assert.equal(mydevice.type, 'tablet'); 243 | }); 244 | }); 245 | describe('41.Apple iPad',function(){ 246 | it('should get device type tablet', function(){ 247 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10'); 248 | assert.equal(mydevice.type, 'tablet'); 249 | }); 250 | }); 251 | describe('42.Apple iPad',function(){ 252 | it('should get device type tablet', function(){ 253 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 4_2 like Mac OS X; en_us) AppleWebKit/525.18.1 (KHTML, like Gecko)'); 254 | assert.equal(mydevice.type, 'tablet'); 255 | }); 256 | }); 257 | describe('43.Apple iPad',function(){ 258 | it('should get device type tablet', function(){ 259 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B405 Safari/531.21.10'); 260 | assert.equal(mydevice.type, 'tablet'); 261 | }); 262 | }); 263 | describe('44.Apple iPad',function(){ 264 | it('should get device type tablet', function(){ 265 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 4_2_1 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8C148 Safari/6533.18.5'); 266 | assert.equal(mydevice.type, 'tablet'); 267 | }); 268 | }); 269 | describe('45.Apple iPad',function(){ 270 | it('should get device type tablet', function(){ 271 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 4_3 like Mac OS X; en_us) AppleWebKit/525.18.1 (KHTML, like Gecko )'); 272 | assert.equal(mydevice.type, 'tablet'); 273 | }); 274 | }); 275 | describe('46.Apple iPad',function(){ 276 | it('should get device type tablet', function(){ 277 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 4_3_1 like Mac OS X; fr-fr) AppleWebKit/533.17.9 (KHTML, like Gecko) Mobile/7D11'); 278 | assert.equal(mydevice.type, 'tablet'); 279 | }); 280 | }); 281 | describe('47.Apple iPad',function(){ 282 | it('should get device type tablet', function(){ 283 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 4_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5'); 284 | assert.equal(mydevice.type, 'tablet'); 285 | }); 286 | }); 287 | describe('48.Apple iPad',function(){ 288 | it('should get device type tablet', function(){ 289 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7D11'); 290 | assert.equal(mydevice.type, 'tablet'); 291 | }); 292 | }); 293 | describe('49.Apple iPad',function(){ 294 | it('should get device type tablet', function(){ 295 | var mydevice = device('Mozilla/5.0 (iProd; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko)'); 296 | assert.equal(mydevice.type, 'tablet'); 297 | }); 298 | }); 299 | describe('50.Apple iPad',function(){ 300 | it('should get device type tablet', function(){ 301 | var mydevice = device('Mozilla/5.0 (iPad Simulator; U; CPU iPhone OS 3_2 like Mac OS X; en_us) AppleWebKit/525.18.1 (KHTML, like Gecko)'); 302 | assert.equal(mydevice.type, 'tablet'); 303 | }); 304 | }); 305 | describe('51.Apple iPad',function(){ 306 | it('should get device type tablet', function(){ 307 | var mydevice = device('Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10'); 308 | assert.equal(mydevice.type, 'tablet'); 309 | }); 310 | }); 311 | describe('52.Apple iPad',function(){ 312 | it('should get device type tablet', function(){ 313 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B367'); 314 | assert.equal(mydevice.type, 'tablet'); 315 | }); 316 | }); 317 | describe('53.Apple iPad',function(){ 318 | it('should get device type tablet', function(){ 319 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10'); 320 | assert.equal(mydevice.type, 'tablet'); 321 | }); 322 | }); 323 | describe('54.Apple iPad',function(){ 324 | it('should get device type tablet', function(){ 325 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 4_2 like Mac OS X; en_us) AppleWebKit/525.18.1 (KHTML, like Gecko)'); 326 | assert.equal(mydevice.type, 'tablet'); 327 | }); 328 | }); 329 | describe('55.Apple iPad',function(){ 330 | it('should get device type tablet', function(){ 331 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B405 Safari/531.21.10'); 332 | assert.equal(mydevice.type, 'tablet'); 333 | }); 334 | }); 335 | describe('56.Apple iPad',function(){ 336 | it('should get device type tablet', function(){ 337 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 4_2_1 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8C148 Safari/6533.18.5'); 338 | assert.equal(mydevice.type, 'tablet'); 339 | }); 340 | }); 341 | describe('57.Apple iPad',function(){ 342 | it('should get device type tablet', function(){ 343 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 4_3 like Mac OS X; en_us) AppleWebKit/525.18.1 (KHTML, like Gecko )'); 344 | assert.equal(mydevice.type, 'tablet'); 345 | }); 346 | }); 347 | describe('58.Apple iPad',function(){ 348 | it('should get device type tablet', function(){ 349 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU iPhone OS 4_3_1 like Mac OS X; fr-fr) AppleWebKit/533.17.9 (KHTML, like Gecko) Mobile/7D11'); 350 | assert.equal(mydevice.type, 'tablet'); 351 | }); 352 | }); 353 | describe('59.Apple iPad',function(){ 354 | it('should get device type tablet', function(){ 355 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS 4_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5'); 356 | assert.equal(mydevice.type, 'tablet'); 357 | }); 358 | }); 359 | describe('60.Apple iPad',function(){ 360 | it('should get device type tablet', function(){ 361 | var mydevice = device('Mozilla/5.0 (iPad; CPU OS 5_0_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A405 Safari/7534.48.3'); 362 | assert.equal(mydevice.type, 'tablet'); 363 | }); 364 | }); 365 | describe('61.Apple iPad using Opera Mini',function(){ 366 | it('should get device type tablet', function(){ 367 | var mydevice = device('Opera/9.80 (J2ME/MIDP; Opera Mini/4.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/23.411; U; en) Presto/2.5.25 Version/10.54'); 368 | assert.equal(mydevice.type, 'tablet'); 369 | }); 370 | }); 371 | describe('62.Archos A101IT',function(){ 372 | it('should get device type tablet', function(){ 373 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; en-ie; A101IT Build/ECLAIR) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 374 | assert.equal(mydevice.type, 'tablet'); 375 | }); 376 | }); 377 | describe('63.Archos A101IT',function(){ 378 | it('should get device type tablet', function(){ 379 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; sv-se; A101IT Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 380 | assert.equal(mydevice.type, 'tablet'); 381 | }); 382 | }); 383 | describe('64.Archos A101IT',function(){ 384 | it('should get device type tablet', function(){ 385 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; en-ie; A101IT Build/ECLAIR) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 386 | assert.equal(mydevice.type, 'tablet'); 387 | }); 388 | }); 389 | describe('65.Archos A101IT',function(){ 390 | it('should get device type tablet', function(){ 391 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; sv-se; A101IT Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 392 | assert.equal(mydevice.type, 'tablet'); 393 | }); 394 | }); 395 | describe('66.Archos A70BHT',function(){ 396 | it('should get device type tablet', function(){ 397 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.0.0; en-gb; A70BHT Build/ECLAIR) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 398 | assert.equal(mydevice.type, 'tablet'); 399 | }); 400 | }); 401 | describe('67.Archos A70BHT',function(){ 402 | it('should get device type tablet', function(){ 403 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.0.0; en-gb; A70BHT Build/ECLAIR) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 404 | assert.equal(mydevice.type, 'tablet'); 405 | }); 406 | }); 407 | describe('68.Asus EEE Pad Transformer',function(){ 408 | it('should get device type tablet', function(){ 409 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2.1; en-us; Transformer TF101 Build/HTK75) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 410 | assert.equal(mydevice.type, 'tablet'); 411 | }); 412 | }); 413 | describe('69.Asus EEE Pad Transformer Prime',function(){ 414 | it('should get device type tablet', function(){ 415 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 4.0.3; en-us; Transformer Prime TF201 Build/IML74K) AppleWebKit/535.7 (KHTML, like Gecko) CrMo/16.0.912.75 Safari/535.7'); 416 | assert.equal(mydevice.type, 'tablet'); 417 | }); 418 | }); 419 | describe('70.Barnes and Noble Nook',function(){ 420 | it('should get device type tablet', function(){ 421 | var mydevice = device('nook browser/1.0'); 422 | assert.equal(mydevice.type, 'tablet'); 423 | }); 424 | }); 425 | describe('71.Barnes and Noble Nook',function(){ 426 | it('should get device type tablet', function(){ 427 | var mydevice = device('nook browser/1.0'); 428 | assert.equal(mydevice.type, 'tablet'); 429 | }); 430 | }); 431 | describe('72.BlackBerry Playbook',function(){ 432 | it('should get device type tablet', function(){ 433 | var mydevice = device('Mozilla/5.0 (PlayBook; U; RIM Tablet OS 1.0.0; en-US) AppleWebKit/534.11+ (KHTML, like Gecko) Version/7.1.0.7 Safari/534.11+'); 434 | assert.equal(mydevice.type, 'tablet'); 435 | }); 436 | }); 437 | describe('73.COBY MID7015',function(){ 438 | it('should get device type tablet', function(){ 439 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; en-us; MID7015 Build/ECLAIR) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 440 | assert.equal(mydevice.type, 'tablet'); 441 | }); 442 | }); 443 | describe('74.Coby MID7015',function(){ 444 | it('should get device type tablet', function(){ 445 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; pl-pl; MID7015 Build/ECLAIR) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 446 | assert.equal(mydevice.type, 'tablet'); 447 | }); 448 | }); 449 | describe('75.Coby MID7015',function(){ 450 | it('should get device type tablet', function(){ 451 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ja-jp; MB511 Build/RUTEM_U3_01.13.0) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 452 | assert.equal(mydevice.type, 'tablet'); 453 | }); 454 | }); 455 | describe('76.COBY MID7015',function(){ 456 | it('should get device type tablet', function(){ 457 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; en-us; MID7015 Build/ECLAIR) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 458 | assert.equal(mydevice.type, 'tablet'); 459 | }); 460 | }); 461 | describe('77.Coby MID7015',function(){ 462 | it('should get device type tablet', function(){ 463 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; pl-pl; MID7015 Build/ECLAIR) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 464 | assert.equal(mydevice.type, 'tablet'); 465 | }); 466 | }); 467 | describe('78.Coby MID7015',function(){ 468 | it('should get device type tablet', function(){ 469 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ja-jp; MB511 Build/RUTEM_U3_01.13.0) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 470 | assert.equal(mydevice.type, 'tablet'); 471 | }); 472 | }); 473 | describe('79.Dell Streak 7',function(){ 474 | it('should get device type tablet', function(){ 475 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; Dell Streak 7 Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 476 | assert.equal(mydevice.type, 'tablet'); 477 | }); 478 | }); 479 | describe('80.Dell Streak 7',function(){ 480 | it('should get device type tablet', function(){ 481 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; Dell Streak 7 Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 482 | assert.equal(mydevice.type, 'tablet'); 483 | }); 484 | }); 485 | describe('81.DoCoMo L-06C',function(){ 486 | it('should get device type tablet', function(){ 487 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; ja-jp; L-06C Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 488 | assert.equal(mydevice.type, 'tablet'); 489 | }); 490 | }); 491 | describe('82.DoCoMo L-06C',function(){ 492 | it('should get device type tablet', function(){ 493 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; ja-jp; L-06C Build/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 494 | assert.equal(mydevice.type, 'tablet'); 495 | }); 496 | }); 497 | describe('83.HP TouchPad',function(){ 498 | it('should get device type tablet', function(){ 499 | var mydevice = device('Mozilla/5.0 (hp-tablet; Linux; hpwOS/3.0.0; U; en-US) AppleWebKit/534.6 (KHTML, like Gecko) wOSBrowser/233.48 Safari/534.6 TouchPad/1.0'); 500 | assert.equal(mydevice.type, 'tablet'); 501 | }); 502 | }); 503 | describe('84.HP TouchPad',function(){ 504 | it('should get device type tablet', function(){ 505 | var mydevice = device('Mozilla/5.0 (hp-tablet; Linux; hpwOS/3.0.0; U; en-US) AppleWebKit/534.6 (KHTML, like Gecko) wOSBrowser/233.48 Safari/534.6 TouchPad/1.0'); 506 | assert.equal(mydevice.type, 'tablet'); 507 | }); 508 | }); 509 | describe('85.HP TouchPad',function(){ 510 | it('should get device type tablet', function(){ 511 | var mydevice = device('Mozilla/5.0 (hp-tablet; Linux; hpwOS/3.0.2; U; en-US) AppleWebKit/534.6 (KHTML, like Gecko) wOSBrowser/234.40.1 Safari/534.6 TouchPad/1.0'); 512 | assert.equal(mydevice.type, 'tablet'); 513 | }); 514 | }); 515 | describe('86.Huawei IDEOS S7',function(){ 516 | it('should get device type tablet', function(){ 517 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; bg-bg; Ideos S7 Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 518 | assert.equal(mydevice.type, 'tablet'); 519 | }); 520 | }); 521 | describe('87.Huawei IDEOS S7',function(){ 522 | it('should get device type tablet', function(){ 523 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; en-au; IDEOS S7 Build/FRG83) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 524 | assert.equal(mydevice.type, 'tablet'); 525 | }); 526 | }); 527 | describe('88.Huawei IDEOS S7',function(){ 528 | it('should get device type tablet', function(){ 529 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; en-us; Ideos S7 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 530 | assert.equal(mydevice.type, 'tablet'); 531 | }); 532 | }); 533 | describe('89.Huawei IDEOS S7',function(){ 534 | it('should get device type tablet', function(){ 535 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; bg-bg; Ideos S7 Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 536 | assert.equal(mydevice.type, 'tablet'); 537 | }); 538 | }); 539 | describe('90.Huawei IDEOS S7',function(){ 540 | it('should get device type tablet', function(){ 541 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; en-au; IDEOS S7 Build/FRG83) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 542 | assert.equal(mydevice.type, 'tablet'); 543 | }); 544 | }); 545 | describe('91.Huawei IDEOS S7',function(){ 546 | it('should get device type tablet', function(){ 547 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; en-us; Ideos S7 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 548 | assert.equal(mydevice.type, 'tablet'); 549 | }); 550 | }); 551 | describe('92.LG V900',function(){ 552 | it('should get device type tablet', function(){ 553 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0; en-us; LG-V900 Build/HRI39) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 554 | assert.equal(mydevice.type, 'tablet'); 555 | }); 556 | }); 557 | describe('93.LG V900',function(){ 558 | it('should get device type tablet', function(){ 559 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0; en-us; LG-V900 Build/HRI39) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 560 | assert.equal(mydevice.type, 'tablet'); 561 | }); 562 | }); 563 | describe('94.Motorola MZ601',function(){ 564 | it('should get device type tablet', function(){ 565 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0; de-de; Build/EVRSU_U5_0.61.0) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 566 | assert.equal(mydevice.type, 'tablet'); 567 | }); 568 | }); 569 | describe('95.Motorola MZ601',function(){ 570 | it('should get device type tablet', function(){ 571 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0; de-de; Build/EVRSU_U5_0.61.0) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 572 | assert.equal(mydevice.type, 'tablet'); 573 | }); 574 | }); 575 | describe('96.Motorola Xoom',function(){ 576 | it('should get device type tablet', function(){ 577 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; en-us; Xoom Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 578 | assert.equal(mydevice.type, 'tablet'); 579 | }); 580 | }); 581 | describe('97.Motorola Xoom',function(){ 582 | it('should get device type tablet', function(){ 583 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; en-us; Xoom Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 584 | assert.equal(mydevice.type, 'tablet'); 585 | }); 586 | }); 587 | describe('98.Motorola Xoom',function(){ 588 | it('should get device type tablet', function(){ 589 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2.1; en-us; Xoom Build/HTK75D) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 590 | assert.equal(mydevice.type, 'tablet'); 591 | }); 592 | }); 593 | describe('99.Nextbook Next2',function(){ 594 | it('should get device type tablet', function(){ 595 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.5; de-de; Next2 Build/CUPCAKE) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20.1'); 596 | assert.equal(mydevice.type, 'tablet'); 597 | }); 598 | }); 599 | describe('100.Nextbook Next2',function(){ 600 | it('should get device type tablet', function(){ 601 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.5; de-de; Next2 Build/CUPCAKE) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20.1'); 602 | assert.equal(mydevice.type, 'tablet'); 603 | }); 604 | }); 605 | describe('101.Nook',function(){ 606 | it('should get device type tablet', function(){ 607 | var mydevice = device('nook browser/1.0'); 608 | assert.equal(mydevice.type, 'tablet'); 609 | }); 610 | }); 611 | describe('102.Nook Color',function(){ 612 | it('should get device type tablet', function(){ 613 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; BNTV250 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Safari/533.1'); 614 | assert.equal(mydevice.type, 'tablet'); 615 | }); 616 | }); 617 | describe('103.Olivetti Olivetti OliPad 100',function(){ 618 | it('should get device type tablet', function(){ 619 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; it-it; OliPad 100 Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 620 | assert.equal(mydevice.type, 'tablet'); 621 | }); 622 | }); 623 | describe('104.Olivetti Olivetti OliPad 100',function(){ 624 | it('should get device type tablet', function(){ 625 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; it-it; OliPad 100 Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 626 | assert.equal(mydevice.type, 'tablet'); 627 | }); 628 | }); 629 | describe('105.Pandigital Nova',function(){ 630 | it('should get device type tablet', function(){ 631 | var mydevice = device('Mozilla/5.0 (Linux; U;Android 2.3.4; en-us; pandigitalnova1/sourceidDL00000021) AppleWebKit/533.1(KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 632 | assert.equal(mydevice.type, 'tablet'); 633 | }); 634 | }); 635 | describe('106.Pandigital Nova - View Mode switched to tablet',function(){ 636 | it('should get device type tablet', function(){ 637 | var mydevice = device('Mozilla/5.0 (iPad; U; CPU OS_3_2_2 like Mac OS X; en-us/pandigitalnova1/sourceidDL00000021) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10'); 638 | assert.equal(mydevice.type, 'tablet'); 639 | }); 640 | }); 641 | describe('107.Pandigital Supernova',function(){ 642 | it('should get device type tablet', function(){ 643 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.1; en-us; pandigitalsprnova1/sourceidDL00000025) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 644 | assert.equal(mydevice.type, 'tablet'); 645 | }); 646 | }); 647 | describe('108.RIM PlayBook',function(){ 648 | it('should get device type tablet', function(){ 649 | var mydevice = device('Mozilla/5.0 (PlayBook; U; RIM Tablet OS 1.0.0; en-US) AppleWebKit/534.8+ (KHTML, like Gecko) Version/0.0.1 Safari/534.8+'); 650 | assert.equal(mydevice.type, 'tablet'); 651 | }); 652 | }); 653 | describe('109.RIM PlayBook',function(){ 654 | it('should get device type tablet', function(){ 655 | var mydevice = device('Mozilla/5.0 (PlayBook; U; RIM Tablet OS 1.0.0; en-US) AppleWebKit/534.8+ (KHTML, like Gecko) Version/0.0.1 Safari/534.8+'); 656 | assert.equal(mydevice.type, 'tablet'); 657 | }); 658 | }); 659 | describe('110.Samsung Galaxy Tab 10.1',function(){ 660 | it('should get device type tablet', function(){ 661 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; en-us; GT-P7510 Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 662 | assert.equal(mydevice.type, 'tablet'); 663 | }); 664 | }); 665 | describe('111.Samsung Galaxy Tab 7',function(){ 666 | it('should get device type tablet', function(){ 667 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2; en-us; GT-P6210 Build/HTJ85B) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 668 | assert.equal(mydevice.type, 'tablet'); 669 | }); 670 | }); 671 | describe('112.Samsung Galaxy Tab 8.9',function(){ 672 | it('should get device type tablet', function(){ 673 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; en-us; GT-P7310 Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 674 | assert.equal(mydevice.type, 'tablet'); 675 | }); 676 | }); 677 | describe('113.Samsung GT-P1000',function(){ 678 | it('should get device type tablet', function(){ 679 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; es-es; GT-P1000 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 680 | assert.equal(mydevice.type, 'tablet'); 681 | }); 682 | }); 683 | describe('114.Samsung GT-P1000',function(){ 684 | it('should get device type tablet', function(){ 685 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-gb; SAMSUNG GT-P1000 Tablet Build/MASTER) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 686 | assert.equal(mydevice.type, 'tablet'); 687 | }); 688 | }); 689 | describe('115.Samsung GT-P1000',function(){ 690 | it('should get device type tablet', function(){ 691 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-ca; GT-P1000R Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 692 | assert.equal(mydevice.type, 'tablet'); 693 | }); 694 | }); 695 | describe('116.Samsung GT-P1000',function(){ 696 | it('should get device type tablet', function(){ 697 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-ca; GT-P1000M Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 698 | assert.equal(mydevice.type, 'tablet'); 699 | }); 700 | }); 701 | describe('117.Samsung GT-P1000',function(){ 702 | it('should get device type tablet', function(){ 703 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SGH-T849 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 704 | assert.equal(mydevice.type, 'tablet'); 705 | }); 706 | }); 707 | describe('118.Samsung GT-P1000',function(){ 708 | it('should get device type tablet', function(){ 709 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SHW-M180S Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 710 | assert.equal(mydevice.type, 'tablet'); 711 | }); 712 | }); 713 | describe('119.Samsung GT-P1000',function(){ 714 | it('should get device type tablet', function(){ 715 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SCH-I800 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 716 | assert.equal(mydevice.type, 'tablet'); 717 | }); 718 | }); 719 | describe('120.Samsung GT-P1000',function(){ 720 | it('should get device type tablet', function(){ 721 | var mydevice = device('Mozilla/5.0 (Linux U Android 2.2 es-us SAMSUNG GT-P1000L Tablet Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 722 | assert.equal(mydevice.type, 'tablet'); 723 | }); 724 | }); 725 | describe('121.Samsung GT-P1000',function(){ 726 | it('should get device type tablet', function(){ 727 | var mydevice = device('Mozilla/5.0 (Linux U Android 2.2 es-us SAMSUNG GT-P1000N Tablet Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 728 | assert.equal(mydevice.type, 'tablet'); 729 | }); 730 | }); 731 | describe('122.Samsung GT-P1000',function(){ 732 | it('should get device type tablet', function(){ 733 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SHW-M180L Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 734 | assert.equal(mydevice.type, 'tablet'); 735 | }); 736 | }); 737 | describe('123.Samsung GT-P1000',function(){ 738 | it('should get device type tablet', function(){ 739 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; SPH-P100 Build/FROYO) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 740 | assert.equal(mydevice.type, 'tablet'); 741 | }); 742 | }); 743 | describe('124.Samsung GT-P1000',function(){ 744 | it('should get device type tablet', function(){ 745 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SGH-I987 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 746 | assert.equal(mydevice.type, 'tablet'); 747 | }); 748 | }); 749 | describe('125.Samsung GT-P1000',function(){ 750 | it('should get device type tablet', function(){ 751 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.3; es-es; GT-P1000 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 752 | assert.equal(mydevice.type, 'tablet'); 753 | }); 754 | }); 755 | describe('126.Samsung GT-P1000',function(){ 756 | it('should get device type tablet', function(){ 757 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; es-es; GT-P1000 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 758 | assert.equal(mydevice.type, 'tablet'); 759 | }); 760 | }); 761 | describe('127.Samsung GT-P1000',function(){ 762 | it('should get device type tablet', function(){ 763 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-gb; SAMSUNG GT-P1000 Tablet Build/MASTER) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 764 | assert.equal(mydevice.type, 'tablet'); 765 | }); 766 | }); 767 | describe('128.Samsung GT-P1000',function(){ 768 | it('should get device type tablet', function(){ 769 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-ca; GT-P1000R Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 770 | assert.equal(mydevice.type, 'tablet'); 771 | }); 772 | }); 773 | describe('129.Samsung GT-P1000',function(){ 774 | it('should get device type tablet', function(){ 775 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-ca; GT-P1000M Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 776 | assert.equal(mydevice.type, 'tablet'); 777 | }); 778 | }); 779 | describe('130.Samsung GT-P1000',function(){ 780 | it('should get device type tablet', function(){ 781 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SGH-T849 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 782 | assert.equal(mydevice.type, 'tablet'); 783 | }); 784 | }); 785 | describe('131.Samsung GT-P1000',function(){ 786 | it('should get device type tablet', function(){ 787 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SHW-M180S Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 788 | assert.equal(mydevice.type, 'tablet'); 789 | }); 790 | }); 791 | describe('132.Samsung GT-P1000',function(){ 792 | it('should get device type tablet', function(){ 793 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SCH-I800 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 794 | assert.equal(mydevice.type, 'tablet'); 795 | }); 796 | }); 797 | describe('133.Samsung GT-P1000',function(){ 798 | it('should get device type tablet', function(){ 799 | var mydevice = device('Mozilla/5.0 (Linux U Android 2.2 es-us SAMSUNG GT-P1000L Tablet Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 800 | assert.equal(mydevice.type, 'tablet'); 801 | }); 802 | }); 803 | describe('134.Samsung GT-P1000',function(){ 804 | it('should get device type tablet', function(){ 805 | var mydevice = device('Mozilla/5.0 (Linux U Android 2.2 es-us SAMSUNG GT-P1000N Tablet Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 806 | assert.equal(mydevice.type, 'tablet'); 807 | }); 808 | }); 809 | describe('135.Samsung GT-P1000',function(){ 810 | it('should get device type tablet', function(){ 811 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SHW-M180L Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 812 | assert.equal(mydevice.type, 'tablet'); 813 | }); 814 | }); 815 | describe('136.Samsung GT-P1000',function(){ 816 | it('should get device type tablet', function(){ 817 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; SPH-P100 Build/FROYO) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 818 | assert.equal(mydevice.type, 'tablet'); 819 | }); 820 | }); 821 | describe('137.Samsung GT-P1000',function(){ 822 | it('should get device type tablet', function(){ 823 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SGH-I987 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 824 | assert.equal(mydevice.type, 'tablet'); 825 | }); 826 | }); 827 | describe('138.Samsung GT-P1000',function(){ 828 | it('should get device type tablet', function(){ 829 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.3; es-es; GT-P1000 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 830 | assert.equal(mydevice.type, 'tablet'); 831 | }); 832 | }); 833 | describe('139.Samsung GT-P7100',function(){ 834 | it('should get device type tablet', function(){ 835 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; GT-P7100 Build/HRI83) AppleWebkit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 836 | assert.equal(mydevice.type, 'tablet'); 837 | }); 838 | }); 839 | describe('140.Samsung GT-P7100',function(){ 840 | it('should get device type tablet', function(){ 841 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; GT-P7100 Build/HRI83) AppleWebkit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 842 | assert.equal(mydevice.type, 'tablet'); 843 | }); 844 | }); 845 | describe('141.Samsung GT-P7500',function(){ 846 | it('should get device type tablet', function(){ 847 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; GT-P7500 Build/HRI83) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 848 | assert.equal(mydevice.type, 'tablet'); 849 | }); 850 | }); 851 | describe('142.Samsung GT-P7500',function(){ 852 | it('should get device type tablet', function(){ 853 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; es-es; SAMSUNG-GT-P7500/P7500BUKEE Build/HONEYCOMB) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 854 | assert.equal(mydevice.type, 'tablet'); 855 | }); 856 | }); 857 | describe('143.Samsung GT-P7500',function(){ 858 | it('should get device type tablet', function(){ 859 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; GT-P7500 Build/HRI83) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 860 | assert.equal(mydevice.type, 'tablet'); 861 | }); 862 | }); 863 | describe('144.Samsung GT-P7500',function(){ 864 | it('should get device type tablet', function(){ 865 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; es-es; SAMSUNG-GT-P7500/P7500BUKEE Build/HONEYCOMB) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 866 | assert.equal(mydevice.type, 'tablet'); 867 | }); 868 | }); 869 | describe('145.Samsung SC-01C',function(){ 870 | it('should get device type tablet', function(){ 871 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; ja-jp; SC-01C Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 (Shinbun Browser)'); 872 | assert.equal(mydevice.type, 'tablet'); 873 | }); 874 | }); 875 | describe('146.Samsung SC-01C',function(){ 876 | it('should get device type tablet', function(){ 877 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.3; ja-jp; SC-01C Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 878 | assert.equal(mydevice.type, 'tablet'); 879 | }); 880 | }); 881 | describe('147.Samsung SC-01C',function(){ 882 | it('should get device type tablet', function(){ 883 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SC-01C Build/FROYO) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 884 | assert.equal(mydevice.type, 'tablet'); 885 | }); 886 | }); 887 | describe('148.Samsung SC-01C',function(){ 888 | it('should get device type tablet', function(){ 889 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; ja-jp; SC-01C Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 (Shinbun Browser)'); 890 | assert.equal(mydevice.type, 'tablet'); 891 | }); 892 | }); 893 | describe('149.Samsung SC-01C',function(){ 894 | it('should get device type tablet', function(){ 895 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.3; ja-jp; SC-01C Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 896 | assert.equal(mydevice.type, 'tablet'); 897 | }); 898 | }); 899 | describe('150.Samsung SC-01C',function(){ 900 | it('should get device type tablet', function(){ 901 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; en-us; SC-01C Build/FROYO) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 902 | assert.equal(mydevice.type, 'tablet'); 903 | }); 904 | }); 905 | describe('151.Sony S Tablet',function(){ 906 | it('should get device type tablet', function(){ 907 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2.1; en-us; Sony Tablet S Build/THMASU0035) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 908 | assert.equal(mydevice.type, 'tablet'); 909 | }); 910 | }); 911 | describe('152.Sony S Tablet',function(){ 912 | it('should get device type tablet', function(){ 913 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.2; en-us; Sony Tablet S Build/THMAS11000) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 914 | assert.equal(mydevice.type, 'tablet'); 915 | }); 916 | }); 917 | describe('153.SonyEricsson X10i',function(){ 918 | it('should get device type tablet', function(){ 919 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; en-gb; SonyEricssonX10i Build/R1DA003) AppleWebKit/528.5+ (KHTML, like Gecko)'); 920 | assert.equal(mydevice.type, 'tablet'); 921 | }); 922 | }); 923 | describe('154.SonyEricsson X10i',function(){ 924 | it('should get device type tablet', function(){ 925 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; en-gb; SonyEricssonX10i Build/R1DA003) AppleWebKit/528.5+ (KHTML, like Gecko)'); 926 | assert.equal(mydevice.type, 'tablet'); 927 | }); 928 | }); 929 | describe('155.Toshiba Folio 100',function(){ 930 | it('should get device type tablet', function(){ 931 | var mydevice = device('Mozilla/5.0 (Linux;U;Linux2.6; it-it; TSB_CLOUD_COMPANION;FOLIO_AND_A) AppleWebKit/530.17 (KHTML,like Gecko) Version/4.0 Safari/530.17'); 932 | assert.equal(mydevice.type, 'tablet'); 933 | }); 934 | }); 935 | describe('156.Toshiba Folio 100',function(){ 936 | it('should get device type tablet', function(){ 937 | var mydevice = device('Opera/9.80 (X11; Linux i686; ADR-1009091650; U; TSB_CLOUD_COMPANION;FOLIO_AND_A; it) Presto/2.5.28 Version/10.1'); 938 | assert.equal(mydevice.type, 'tablet'); 939 | }); 940 | }); 941 | describe('157.Toshiba Folio 100',function(){ 942 | it('should get device type tablet', function(){ 943 | var mydevice = device('Mozilla/5.0 (Linux;U;Linux2.6; it-it; TSB_CLOUD_COMPANION;FOLIO_AND_A) AppleWebKit/530.17 (KHTML,like Gecko) Version/4.0 Safari/530.17'); 944 | assert.equal(mydevice.type, 'tablet'); 945 | }); 946 | }); 947 | describe('158.Toshiba Folio 100',function(){ 948 | it('should get device type tablet', function(){ 949 | var mydevice = device('Opera/9.80 (X11; Linux i686; ADR-1009091650; U; TSB_CLOUD_COMPANION;FOLIO_AND_A; it) Presto/2.5.28 Version/10.1'); 950 | assert.equal(mydevice.type, 'tablet'); 951 | }); 952 | }); 953 | describe('159.Toshiba Thrive',function(){ 954 | it('should get device type tablet', function(){ 955 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 3.1; en-us; AT100 Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13'); 956 | assert.equal(mydevice.type, 'tablet'); 957 | }); 958 | }); 959 | describe('160.ViewSonic ViewPad7',function(){ 960 | it('should get device type tablet', function(){ 961 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; ru-; ViewPad7 Build/FRG83) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 962 | assert.equal(mydevice.type, 'tablet'); 963 | }); 964 | }); 965 | describe('161.ViewSonic ViewPad7',function(){ 966 | it('should get device type tablet', function(){ 967 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2.1; ru-; ViewPad7 Build/FRG83) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 968 | assert.equal(mydevice.type, 'tablet'); 969 | }); 970 | }); 971 | describe('162.Zenithink zt180',function(){ 972 | it('should get device type tablet', function(){ 973 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; cs-cz; zt180 Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 974 | assert.equal(mydevice.type, 'tablet'); 975 | }); 976 | }); 977 | describe('163.Zenithink zt180',function(){ 978 | it('should get device type tablet', function(){ 979 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; cs-cz; zt180 Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 980 | assert.equal(mydevice.type, 'tablet'); 981 | }); 982 | }); 983 | describe('164.Amazon Kindle Fire',function(){ 984 | it('should get device type tablet', function(){ 985 | var mydevice = device('Mozilla/5.0 (Linux; U; en-us; KFJWI Build/IMM76D) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.10 Safari/535.19 Silk-Accelerated=true'); 986 | assert.equal(mydevice.type, 'tablet'); 987 | }); 988 | }); 989 | describe('Tablet device type check with is method', function () { 990 | it('should get true', function () { 991 | var mydevice = device('iPad'); 992 | assert.equal(mydevice.is('tablet'), true); 993 | }); 994 | }); 995 | describe('Phone (but it is a tablet) device type check with is method', function () { 996 | it('should get false', function () { 997 | var mydevice = device('iPad'); 998 | assert.equal(mydevice.is('phone'), false); 999 | }); 1000 | }); 1001 | }); -------------------------------------------------------------------------------- /test/device_phone_6_test.js: -------------------------------------------------------------------------------- 1 | var device = require('../lib/device.js'), 2 | assert = require('assert'); 3 | 4 | describe('device', function() { 5 | describe('10001.Verizon XV6900',function(){ 6 | it('should get device type phone', function(){ 7 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.7) 320x320; XV6900; Window Mobile 6.0 Professional;'); 8 | assert.equal(mydevice.type, 'phone'); 9 | }); 10 | }); 11 | describe('10002.Verizon XV6900',function(){ 12 | it('should get device type phone', function(){ 13 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.7) 320x320; XV6900; Window Mobile 6.0 Professional;'); 14 | assert.equal(mydevice.type, 'phone'); 15 | }); 16 | }); 17 | describe('10003.Vertu Constellation',function(){ 18 | it('should get device type phone', function(){ 19 | var mydevice = device('Mozilla/5.0/SNXXXXXXXXXXXXXXX (SymbianOS/9.3; Series60/3.2 VertuConstellationQuest/051.716.5; Profile/MIDP-2.1 Configuration/CLDC-1.1 ) AppleWebKit/525 (KHTML, like Gecko) Version/3.0 BrowserNG/7.2.6.2 3gpp-gba'); 20 | assert.equal(mydevice.type, 'phone'); 21 | }); 22 | }); 23 | describe('10004.Vertu Constellation',function(){ 24 | it('should get device type phone', function(){ 25 | var mydevice = device('Mozilla/5.0/SNXXXXXXXXXXXXXXX (SymbianOS/9.3; Series60/3.2 VertuConstellationQuest/051.716.5; Profile/MIDP-2.1 Configuration/CLDC-1.1 ) AppleWebKit/525 (KHTML, like Gecko) Version/3.0 BrowserNG/7.2.6.2 3gpp-gba'); 26 | assert.equal(mydevice.type, 'phone'); 27 | }); 28 | }); 29 | describe('10005.Vibo A688',function(){ 30 | it('should get device type phone', function(){ 31 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; zh-tw; Vibo-A688 Build/DONUT) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 32 | assert.equal(mydevice.type, 'phone'); 33 | }); 34 | }); 35 | describe('10006.Vibo A688',function(){ 36 | it('should get device type phone', function(){ 37 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; zh-tw; Vibo-A688 Build/DONUT) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 38 | assert.equal(mydevice.type, 'phone'); 39 | }); 40 | }); 41 | describe('10007.Vibo T588',function(){ 42 | it('should get device type phone', function(){ 43 | var mydevice = device('Vibo-T588/Obigo/Q7 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 44 | assert.equal(mydevice.type, 'phone'); 45 | }); 46 | }); 47 | describe('10008.Vibo T588',function(){ 48 | it('should get device type phone', function(){ 49 | var mydevice = device('Vibo-T588/Obigo/Q7 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 50 | assert.equal(mydevice.type, 'phone'); 51 | }); 52 | }); 53 | describe('10009.Videocon V1675',function(){ 54 | it('should get device type phone', function(){ 55 | var mydevice = device('Videocon_V1675_Wap MAUI WAP Browser2.0'); 56 | assert.equal(mydevice.type, 'phone'); 57 | }); 58 | }); 59 | describe('10010.Videocon V1675',function(){ 60 | it('should get device type phone', function(){ 61 | var mydevice = device('Videocon_V1675_Wap MAUI WAP Browser2.0'); 62 | assert.equal(mydevice.type, 'phone'); 63 | }); 64 | }); 65 | describe('10011.VK Mobile VK2030',function(){ 66 | it('should get device type phone', function(){ 67 | var mydevice = device('VK-VK2030/1.0'); 68 | assert.equal(mydevice.type, 'phone'); 69 | }); 70 | }); 71 | describe('10012.VK Mobile VK2030',function(){ 72 | it('should get device type phone', function(){ 73 | var mydevice = device('VK-VK2030/1.0'); 74 | assert.equal(mydevice.type, 'phone'); 75 | }); 76 | }); 77 | describe('10013.Vodafone 945',function(){ 78 | it('should get device type phone', function(){ 79 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1; tr_TR; Vodafone 945 Build/VF945-MSM7227-V02e-Oct292010-Vodafone-TR'); 80 | assert.equal(mydevice.type, 'phone'); 81 | }); 82 | }); 83 | describe('10014.Vodafone 945',function(){ 84 | it('should get device type phone', function(){ 85 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; it-it; Vodafone 945 Build/VF945_V02d_DE) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 86 | assert.equal(mydevice.type, 'phone'); 87 | }); 88 | }); 89 | describe('10015.Vodafone 945',function(){ 90 | it('should get device type phone', function(){ 91 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1; tr_TR; Vodafone 945 Build/VF945-MSM7227-V02e-Oct292010-Vodafone-TR'); 92 | assert.equal(mydevice.type, 'phone'); 93 | }); 94 | }); 95 | describe('10016.Vodafone 945',function(){ 96 | it('should get device type phone', function(){ 97 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; it-it; Vodafone 945 Build/VF945_V02d_DE) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 98 | assert.equal(mydevice.type, 'phone'); 99 | }); 100 | }); 101 | describe('10017.Vodafone SFR v1615',function(){ 102 | it('should get device type phone', function(){ 103 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.6) Vodafone/1.0/SFR_v1615/1.56.163.9'); 104 | assert.equal(mydevice.type, 'phone'); 105 | }); 106 | }); 107 | describe('10018.Vodafone SFR v1615',function(){ 108 | it('should get device type phone', function(){ 109 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11) Vodafone/1.0/HTC_Kaiser/3.28.161.1'); 110 | assert.equal(mydevice.type, 'phone'); 111 | }); 112 | }); 113 | describe('10019.Vodafone SFR v1615',function(){ 114 | it('should get device type phone', function(){ 115 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.6) Vodafone/1.0/SFR_v1615/1.56.163.9'); 116 | assert.equal(mydevice.type, 'phone'); 117 | }); 118 | }); 119 | describe('10020.Vodafone SFR v1615',function(){ 120 | it('should get device type phone', function(){ 121 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11) Vodafone/1.0/HTC_Kaiser/3.28.161.1'); 122 | assert.equal(mydevice.type, 'phone'); 123 | }); 124 | }); 125 | describe('10021.Vodafone SFR V3650',function(){ 126 | it('should get device type phone', function(){ 127 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.6) Vodafone/1.0/SFR_v3650/1.25.163.3'); 128 | assert.equal(mydevice.type, 'phone'); 129 | }); 130 | }); 131 | describe('10022.Vodafone SFR V3650',function(){ 132 | it('should get device type phone', function(){ 133 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.6) Vodafone/1.0/SFR_v3650/1.25.163.3'); 134 | assert.equal(mydevice.type, 'phone'); 135 | }); 136 | }); 137 | describe('10023.Vodafone v1240',function(){ 138 | it('should get device type phone', function(){ 139 | var mydevice = device('Vodafone/1.0/v1240/2.5.483.2/Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; Smartphone; 240x320)'); 140 | assert.equal(mydevice.type, 'phone'); 141 | }); 142 | }); 143 | describe('10024.Vodafone v1240',function(){ 144 | it('should get device type phone', function(){ 145 | var mydevice = device('VodafoneV1240/B532 Browser/NetFront/3.5 MMS/Obigo-MMS/Q05A SyncML/HW-SyncML/1.0 Java/HWJa/2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 Player/QTV-Player/5.3'); 146 | assert.equal(mydevice.type, 'phone'); 147 | }); 148 | }); 149 | describe('10025.Vodafone v1240',function(){ 150 | it('should get device type phone', function(){ 151 | var mydevice = device('Vodafone/1.0/v1240/2.5.483.2/Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; Smartphone; 240x320)'); 152 | assert.equal(mydevice.type, 'phone'); 153 | }); 154 | }); 155 | describe('10026.Vodafone v1240',function(){ 156 | it('should get device type phone', function(){ 157 | var mydevice = device('VodafoneV1240/B532 Browser/NetFront/3.5 MMS/Obigo-MMS/Q05A SyncML/HW-SyncML/1.0 Java/HWJa/2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 Player/QTV-Player/5.3'); 158 | assert.equal(mydevice.type, 'phone'); 159 | }); 160 | }); 161 | describe('10027.Vodafone v1415',function(){ 162 | it('should get device type phone', function(){ 163 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 6.12) Vodafone/1.0/HTC_v1415/1.18.161.3'); 164 | assert.equal(mydevice.type, 'phone'); 165 | }); 166 | }); 167 | describe('10028.Vodafone v1415',function(){ 168 | it('should get device type phone', function(){ 169 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 6.12) Vodafone/1.0/HTC_v1415/1.18.161.3'); 170 | assert.equal(mydevice.type, 'phone'); 171 | }); 172 | }); 173 | describe('10029.Vodafone VDA GPS',function(){ 174 | it('should get device type phone', function(){ 175 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.6) VDA-GPS/R1 Mozilla/4.0/WAP2.0 Profile/MIDP2.0 Configuration/CLDC1.1'); 176 | assert.equal(mydevice.type, 'phone'); 177 | }); 178 | }); 179 | describe('10030.Vodafone VDA GPS',function(){ 180 | it('should get device type phone', function(){ 181 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.6) VDA-GPS/R1 Mozilla/4.0/WAP2.0 Profile/MIDP2.0 Configuration/CLDC1.1'); 182 | assert.equal(mydevice.type, 'phone'); 183 | }); 184 | }); 185 | describe('10031.VODAFONE VODAFONE 735',function(){ 186 | it('should get device type phone', function(){ 187 | var mydevice = device('Vodafone/1.0/0Vodafone735/B712 Browser/Obigo-Browser/Q05A MMS/Obigo-MMS/Q05A SyncML/HW-SyncML/1.0 Java/HWJa/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 Player/QTV-Player/5.3'); 188 | assert.equal(mydevice.type, 'phone'); 189 | }); 190 | }); 191 | describe('10032.VODAFONE VODAFONE 735',function(){ 192 | it('should get device type phone', function(){ 193 | var mydevice = device('Vodafone/1.0/0Vodafone735/B712 Browser/Obigo-Browser/Q05A MMS/Obigo-MMS/Q05A SyncML/HW-SyncML/1.0 Java/HWJa/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 Player/QTV-Player/5.3'); 194 | assert.equal(mydevice.type, 'phone'); 195 | }); 196 | }); 197 | describe('10033.Vodafone Vodafone 810',function(){ 198 | it('should get device type phone', function(){ 199 | var mydevice = device('MTV/1.0/MTV3-3/B635 Browser/Obigo-Browser/Q05A MMS/Obigo-MMS/Q05A SyncML/HW-SyncML/1.0 Java/HWJa/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 200 | assert.equal(mydevice.type, 'phone'); 201 | }); 202 | }); 203 | describe('10034.Vodafone Vodafone 810',function(){ 204 | it('should get device type phone', function(){ 205 | var mydevice = device('MTV/1.0/MTV3-3/B635 Browser/Obigo-Browser/Q05A MMS/Obigo-MMS/Q05A SyncML/HW-SyncML/1.0 Java/HWJa/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 206 | assert.equal(mydevice.type, 'phone'); 207 | }); 208 | }); 209 | describe('10035.Vodafone VPA Compact IV',function(){ 210 | it('should get device type phone', function(){ 211 | var mydevice = device('HTCArtist'); 212 | assert.equal(mydevice.type, 'phone'); 213 | }); 214 | }); 215 | describe('10036.Vodafone VPA Compact IV',function(){ 216 | it('should get device type phone', function(){ 217 | var mydevice = device('HTCArtist/111204 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 218 | assert.equal(mydevice.type, 'phone'); 219 | }); 220 | }); 221 | describe('10037.Vodafone VPA Compact IV',function(){ 222 | it('should get device type phone', function(){ 223 | var mydevice = device('HTCArtist/112153 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 224 | assert.equal(mydevice.type, 'phone'); 225 | }); 226 | }); 227 | describe('10038.Vodafone VPA Compact IV',function(){ 228 | it('should get device type phone', function(){ 229 | var mydevice = device('HTCArtist/112161 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 230 | assert.equal(mydevice.type, 'phone'); 231 | }); 232 | }); 233 | describe('10039.Vodafone VPA Compact IV',function(){ 234 | it('should get device type phone', function(){ 235 | var mydevice = device('Mozilla/5.0 (PDA; NF35WMPRO/1.0; like Gecko) NetFront/3.5'); 236 | assert.equal(mydevice.type, 'phone'); 237 | }); 238 | }); 239 | describe('10040.Vodafone VPA Compact IV',function(){ 240 | it('should get device type phone', function(){ 241 | var mydevice = device('Vodafone/1.0/HTC_VPACompactIV/5.4.172.1/Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; MIDP-2.0 Configuration/CLDC-1.1; PPC; 240x320)'); 242 | assert.equal(mydevice.type, 'phone'); 243 | }); 244 | }); 245 | describe('10041.Vodafone VPA Compact IV',function(){ 246 | it('should get device type phone', function(){ 247 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 6.12) Vodafone/1.0/HTC_VPACompactIV/4.14.162.2'); 248 | assert.equal(mydevice.type, 'phone'); 249 | }); 250 | }); 251 | describe('10042.Vodafone VPA Compact IV',function(){ 252 | it('should get device type phone', function(){ 253 | var mydevice = device('HTCArtist'); 254 | assert.equal(mydevice.type, 'phone'); 255 | }); 256 | }); 257 | describe('10043.Vodafone VPA Compact IV',function(){ 258 | it('should get device type phone', function(){ 259 | var mydevice = device('HTCArtist/111204 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 260 | assert.equal(mydevice.type, 'phone'); 261 | }); 262 | }); 263 | describe('10044.Vodafone VPA Compact IV',function(){ 264 | it('should get device type phone', function(){ 265 | var mydevice = device('HTCArtist/112153 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 266 | assert.equal(mydevice.type, 'phone'); 267 | }); 268 | }); 269 | describe('10045.Vodafone VPA Compact IV',function(){ 270 | it('should get device type phone', function(){ 271 | var mydevice = device('HTCArtist/112161 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 272 | assert.equal(mydevice.type, 'phone'); 273 | }); 274 | }); 275 | describe('10046.Vodafone VPA Compact IV',function(){ 276 | it('should get device type phone', function(){ 277 | var mydevice = device('Mozilla/5.0 (PDA; NF35WMPRO/1.0; like Gecko) NetFront/3.5'); 278 | assert.equal(mydevice.type, 'phone'); 279 | }); 280 | }); 281 | describe('10047.Vodafone VPA Compact IV',function(){ 282 | it('should get device type phone', function(){ 283 | var mydevice = device('Vodafone/1.0/HTC_VPACompactIV/5.4.172.1/Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; MIDP-2.0 Configuration/CLDC-1.1; PPC; 240x320)'); 284 | assert.equal(mydevice.type, 'phone'); 285 | }); 286 | }); 287 | describe('10048.Vodafone VPA Compact IV',function(){ 288 | it('should get device type phone', function(){ 289 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 6.12) Vodafone/1.0/HTC_VPACompactIV/4.14.162.2'); 290 | assert.equal(mydevice.type, 'phone'); 291 | }); 292 | }); 293 | describe('10049.Vodafone ZTE Indie',function(){ 294 | it('should get device type phone', function(){ 295 | var mydevice = device('Indie/Indie_SF_B07A101 Obigo/Q03C'); 296 | assert.equal(mydevice.type, 'phone'); 297 | }); 298 | }); 299 | describe('10050.Vodafone ZTE Indie',function(){ 300 | it('should get device type phone', function(){ 301 | var mydevice = device('Indie/Indie_SF_B07A101 Obigo/Q03C'); 302 | assert.equal(mydevice.type, 'phone'); 303 | }); 304 | }); 305 | describe('10051.Voxtel 3iD SkyMM',function(){ 306 | it('should get device type phone', function(){ 307 | var mydevice = device('VOXTEL-3iD SKYMM/WAP 2.0 MIDP-2.0/CLDC-1.1'); 308 | assert.equal(mydevice.type, 'phone'); 309 | }); 310 | }); 311 | describe('10052.Voxtel 3iD SkyMM',function(){ 312 | it('should get device type phone', function(){ 313 | var mydevice = device('VOXTEL-3iD SKYMM/WAP 2.0 MIDP-2.0/CLDC-1.1'); 314 | assert.equal(mydevice.type, 'phone'); 315 | }); 316 | }); 317 | describe('10053.Voxtel w210',function(){ 318 | it('should get device type phone', function(){ 319 | var mydevice = device('VOXTEL_W210_TO_BE_FIXED'); 320 | assert.equal(mydevice.type, 'phone'); 321 | }); 322 | }); 323 | describe('10054.Voxtel w210',function(){ 324 | it('should get device type phone', function(){ 325 | var mydevice = device('VOXTEL_W210_TO_BE_FIXED'); 326 | assert.equal(mydevice.type, 'phone'); 327 | }); 328 | }); 329 | describe('10055.Wapamp Proxy',function(){ 330 | it('should get device type phone', function(){ 331 | var mydevice = device('N73[ejatd29.wapamp.com]editby:m4ster_v4 /1.03) NetFront/3.2'); 332 | assert.equal(mydevice.type, 'phone'); 333 | }); 334 | }); 335 | describe('10056.Wapamp Proxy',function(){ 336 | it('should get device type phone', function(){ 337 | var mydevice = device('N73[ejatd29.wapamp.com]editby:m4ster_v4 /1.03) NetFront/3.2'); 338 | assert.equal(mydevice.type, 'phone'); 339 | }); 340 | }); 341 | describe('10057.WellcoM A88',function(){ 342 | it('should get device type phone', function(){ 343 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; th-th; WellcoM-A88 Build/DONUT) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 344 | assert.equal(mydevice.type, 'phone'); 345 | }); 346 | }); 347 | describe('10058.WellcoM A88',function(){ 348 | it('should get device type phone', function(){ 349 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; th-th; WellcoM-A88 Build/DONUT) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 350 | assert.equal(mydevice.type, 'phone'); 351 | }); 352 | }); 353 | describe('10059.WellcoM W398',function(){ 354 | it('should get device type phone', function(){ 355 | var mydevice = device('WELLCOM_W398'); 356 | assert.equal(mydevice.type, 'phone'); 357 | }); 358 | }); 359 | describe('10060.WellcoM W398',function(){ 360 | it('should get device type phone', function(){ 361 | var mydevice = device('WELLCOM_W398'); 362 | assert.equal(mydevice.type, 'phone'); 363 | }); 364 | }); 365 | describe('10061.WellcoM W819',function(){ 366 | it('should get device type phone', function(){ 367 | var mydevice = device('WELLCOM_W819 WAP Browser'); 368 | assert.equal(mydevice.type, 'phone'); 369 | }); 370 | }); 371 | describe('10062.WellcoM W819',function(){ 372 | it('should get device type phone', function(){ 373 | var mydevice = device('WELLCOM_W819 WAP Browser'); 374 | assert.equal(mydevice.type, 'phone'); 375 | }); 376 | }); 377 | describe('10063.WellcoM W839+',function(){ 378 | it('should get device type phone', function(){ 379 | var mydevice = device('WellcoM_W839+_Browser'); 380 | assert.equal(mydevice.type, 'phone'); 381 | }); 382 | }); 383 | describe('10064.WellcoM W839+',function(){ 384 | it('should get device type phone', function(){ 385 | var mydevice = device('WellcoM_W839+_Browser'); 386 | assert.equal(mydevice.type, 'phone'); 387 | }); 388 | }); 389 | describe('10065.WellcoM W920',function(){ 390 | it('should get device type phone', function(){ 391 | var mydevice = device('WELLCOM/W920/MIDP2.0/CLDC1.1/Screen-240x320'); 392 | assert.equal(mydevice.type, 'phone'); 393 | }); 394 | }); 395 | describe('10066.WellcoM W920',function(){ 396 | it('should get device type phone', function(){ 397 | var mydevice = device('WELLCOM/W920/MIDP2.0/CLDC1.1/Screen-240x320'); 398 | assert.equal(mydevice.type, 'phone'); 399 | }); 400 | }); 401 | describe('10067.WellcoM W9229',function(){ 402 | it('should get device type phone', function(){ 403 | var mydevice = device('W9229ObigolnternetBrowser/QO3C Profile/MIDP-2.0 Configuration/CLDC-1.1'); 404 | assert.equal(mydevice.type, 'phone'); 405 | }); 406 | }); 407 | describe('10068.WellcoM W9229',function(){ 408 | it('should get device type phone', function(){ 409 | var mydevice = device('W9229ObigolnternetBrowser/QO3C Profile/MIDP-2.0 Configuration/CLDC-1.1'); 410 | assert.equal(mydevice.type, 'phone'); 411 | }); 412 | }); 413 | describe('10069.WellcoM W929',function(){ 414 | it('should get device type phone', function(){ 415 | var mydevice = device('WellcoM W929 WAP Browser'); 416 | assert.equal(mydevice.type, 'phone'); 417 | }); 418 | }); 419 | describe('10070.WellcoM W929',function(){ 420 | it('should get device type phone', function(){ 421 | var mydevice = device('WellcoM W929 WAP Browser'); 422 | assert.equal(mydevice.type, 'phone'); 423 | }); 424 | }); 425 | describe('10071.Windows HTC Radar',function(){ 426 | it('should get device type phone', function(){ 427 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; HTC; Radar 4G)'); 428 | assert.equal(mydevice.type, 'phone'); 429 | }); 430 | }); 431 | describe('10072.Windows HTC Trophy',function(){ 432 | it('should get device type phone', function(){ 433 | var mydevice = device('Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; HTC; mwp6985)'); 434 | assert.equal(mydevice.type, 'phone'); 435 | }); 436 | }); 437 | describe('10073.Windows Mobile Pocket PC',function(){ 438 | it('should get device type phone', function(){ 439 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 440 | assert.equal(mydevice.type, 'phone'); 441 | }); 442 | }); 443 | describe('10074.Windows Mobile Pocket PC',function(){ 444 | it('should get device type phone', function(){ 445 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)'); 446 | assert.equal(mydevice.type, 'phone'); 447 | }); 448 | }); 449 | describe('10075.Xiino Browser',function(){ 450 | it('should get device type phone', function(){ 451 | var mydevice = device('Xiino/1.0.9E [en] (v. 4.1; 153x130; g4)'); 452 | assert.equal(mydevice.type, 'phone'); 453 | }); 454 | }); 455 | describe('10076.XJXN F420',function(){ 456 | it('should get device type phone', function(){ 457 | var mydevice = device('XJXN-F420/(2006.12.25)M.RF4201111.M01001.V1.0/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.0'); 458 | assert.equal(mydevice.type, 'phone'); 459 | }); 460 | }); 461 | describe('10077.XJXN F420',function(){ 462 | it('should get device type phone', function(){ 463 | var mydevice = device('XJXN-F420/(2006.12.25)M.RF4201111.M01001.V1.0/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.0'); 464 | assert.equal(mydevice.type, 'phone'); 465 | }); 466 | }); 467 | describe('10078.Zonda ZMCK740',function(){ 468 | it('should get device type phone', function(){ 469 | var mydevice = device('ZMCK740'); 470 | assert.equal(mydevice.type, 'phone'); 471 | }); 472 | }); 473 | describe('10079.Zonda ZMCK740',function(){ 474 | it('should get device type phone', function(){ 475 | var mydevice = device('ZMCK740'); 476 | assert.equal(mydevice.type, 'phone'); 477 | }); 478 | }); 479 | describe('10080.Zonda ZMCK870',function(){ 480 | it('should get device type phone', function(){ 481 | var mydevice = device('ZMCK870'); 482 | assert.equal(mydevice.type, 'phone'); 483 | }); 484 | }); 485 | describe('10081.Zonda ZMCK870',function(){ 486 | it('should get device type phone', function(){ 487 | var mydevice = device('ZMCK870'); 488 | assert.equal(mydevice.type, 'phone'); 489 | }); 490 | }); 491 | describe('10082.Zonda ZMTFTV20',function(){ 492 | it('should get device type phone', function(){ 493 | var mydevice = device('ZMTFTV20/R01 Browser/Obigo/Q03C/WAP2.0'); 494 | assert.equal(mydevice.type, 'phone'); 495 | }); 496 | }); 497 | describe('10083.Zonda ZMTFTV20',function(){ 498 | it('should get device type phone', function(){ 499 | var mydevice = device('ZMTFTV20/R01 Browser/Obigo/Q03C/WAP2.0'); 500 | assert.equal(mydevice.type, 'phone'); 501 | }); 502 | }); 503 | describe('10084.Zonda ZMTN610',function(){ 504 | it('should get device type phone', function(){ 505 | var mydevice = device('ZMTN610'); 506 | assert.equal(mydevice.type, 'phone'); 507 | }); 508 | }); 509 | describe('10085.Zonda ZMTN610',function(){ 510 | it('should get device type phone', function(){ 511 | var mydevice = device('ZMTN610'); 512 | assert.equal(mydevice.type, 'phone'); 513 | }); 514 | }); 515 | describe('10086.Zonda ZMTN615',function(){ 516 | it('should get device type phone', function(){ 517 | var mydevice = device('ZMTN615'); 518 | assert.equal(mydevice.type, 'phone'); 519 | }); 520 | }); 521 | describe('10087.Zonda ZMTN615',function(){ 522 | it('should get device type phone', function(){ 523 | var mydevice = device('ZMTN615'); 524 | assert.equal(mydevice.type, 'phone'); 525 | }); 526 | }); 527 | describe('10088.Zonda ZMTN800',function(){ 528 | it('should get device type phone', function(){ 529 | var mydevice = device('ZMTN800'); 530 | assert.equal(mydevice.type, 'phone'); 531 | }); 532 | }); 533 | describe('10089.Zonda ZMTN800',function(){ 534 | it('should get device type phone', function(){ 535 | var mydevice = device('ZMTN800'); 536 | assert.equal(mydevice.type, 'phone'); 537 | }); 538 | }); 539 | describe('10090.Zonda ZMTN815',function(){ 540 | it('should get device type phone', function(){ 541 | var mydevice = device('ZMTN815'); 542 | assert.equal(mydevice.type, 'phone'); 543 | }); 544 | }); 545 | describe('10091.Zonda ZMTN815',function(){ 546 | it('should get device type phone', function(){ 547 | var mydevice = device('ZMTN815'); 548 | assert.equal(mydevice.type, 'phone'); 549 | }); 550 | }); 551 | describe('10092.ZT 8988',function(){ 552 | it('should get device type phone', function(){ 553 | var mydevice = device('ZT8988/1.0 MTK/W07.12 Release/01.01.2007 Browser/Teleca-1.2'); 554 | assert.equal(mydevice.type, 'phone'); 555 | }); 556 | }); 557 | describe('10093.ZT 8988',function(){ 558 | it('should get device type phone', function(){ 559 | var mydevice = device('ZT8988/1.0 MTK/W07.12 Release/01.01.2007 Browser/Teleca-1.2'); 560 | assert.equal(mydevice.type, 'phone'); 561 | }); 562 | }); 563 | describe('10094.ZTE 70W',function(){ 564 | it('should get device type phone', function(){ 565 | var mydevice = device('AIKO 70W/WAP2.0'); 566 | assert.equal(mydevice.type, 'phone'); 567 | }); 568 | }); 569 | describe('10095.ZTE 70W',function(){ 570 | it('should get device type phone', function(){ 571 | var mydevice = device('AIKO 70W/WAP2.0'); 572 | assert.equal(mydevice.type, 'phone'); 573 | }); 574 | }); 575 | describe('10096.ZTE A261',function(){ 576 | it('should get device type phone', function(){ 577 | var mydevice = device('ZTE-A261/P103B9V1.0.0/WAP2.0 Profile'); 578 | assert.equal(mydevice.type, 'phone'); 579 | }); 580 | }); 581 | describe('10097.ZTE A261',function(){ 582 | it('should get device type phone', function(){ 583 | var mydevice = device('ZTE-A261/P103B9V1.0.0/WAP2.0 Profile'); 584 | assert.equal(mydevice.type, 'phone'); 585 | }); 586 | }); 587 | describe('10098.ZTE A37',function(){ 588 | it('should get device type phone', function(){ 589 | var mydevice = device('ZTE-A37/P103B2SWV1.0.0/WAP1.2.1 Profile'); 590 | assert.equal(mydevice.type, 'phone'); 591 | }); 592 | }); 593 | describe('10099.ZTE A37',function(){ 594 | it('should get device type phone', function(){ 595 | var mydevice = device('ZTE-A37/P103B2SWV1.0.0/WAP1.2.1 Profile'); 596 | assert.equal(mydevice.type, 'phone'); 597 | }); 598 | }); 599 | describe('10100.ZTE AMC F188',function(){ 600 | it('should get device type phone', function(){ 601 | var mydevice = device('AMC F188/1.0 ACS-NF/3.4 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 602 | assert.equal(mydevice.type, 'phone'); 603 | }); 604 | }); 605 | describe('10101.ZTE AMC F188',function(){ 606 | it('should get device type phone', function(){ 607 | var mydevice = device('AMC F188/1.0 ACS-NF/3.4 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 608 | assert.equal(mydevice.type, 'phone'); 609 | }); 610 | }); 611 | describe('10102.ZTE Amigo',function(){ 612 | it('should get device type phone', function(){ 613 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Android Edition Starnaute Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 614 | assert.equal(mydevice.type, 'phone'); 615 | }); 616 | }); 617 | describe('10103.ZTE Amigo',function(){ 618 | it('should get device type phone', function(){ 619 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Android Edition Starnaute Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 620 | assert.equal(mydevice.type, 'phone'); 621 | }); 622 | }); 623 | describe('10104.ZTE Beeline M2',function(){ 624 | it('should get device type phone', function(){ 625 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ru-ru; Beeline M2 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 626 | assert.equal(mydevice.type, 'phone'); 627 | }); 628 | }); 629 | describe('10105.ZTE Beeline M2',function(){ 630 | it('should get device type phone', function(){ 631 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ru-ru; Beeline M2 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 632 | assert.equal(mydevice.type, 'phone'); 633 | }); 634 | }); 635 | describe('10106.ZTE Blade',function(){ 636 | it('should get device type phone', function(){ 637 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; BASE lutea Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 638 | assert.equal(mydevice.type, 'phone'); 639 | }); 640 | }); 641 | describe('10107.ZTE BLADE',function(){ 642 | it('should get device type phone', function(){ 643 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; el-gr; ZTE-BLADE Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 644 | assert.equal(mydevice.type, 'phone'); 645 | }); 646 | }); 647 | describe('10108.ZTE Blade',function(){ 648 | it('should get device type phone', function(){ 649 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Android Edition LIBRA Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 650 | assert.equal(mydevice.type, 'phone'); 651 | }); 652 | }); 653 | describe('10109.ZTE Blade',function(){ 654 | it('should get device type phone', function(){ 655 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.3; sv-se; Blade Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 656 | assert.equal(mydevice.type, 'phone'); 657 | }); 658 | }); 659 | describe('10110.ZTE Blade',function(){ 660 | it('should get device type phone', function(){ 661 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; es-es; ZTE-BLADE Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 662 | assert.equal(mydevice.type, 'phone'); 663 | }); 664 | }); 665 | describe('10111.ZTE Blade',function(){ 666 | it('should get device type phone', function(){ 667 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; BASE lutea Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 668 | assert.equal(mydevice.type, 'phone'); 669 | }); 670 | }); 671 | describe('10112.ZTE BLADE',function(){ 672 | it('should get device type phone', function(){ 673 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; el-gr; ZTE-BLADE Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 674 | assert.equal(mydevice.type, 'phone'); 675 | }); 676 | }); 677 | describe('10113.ZTE Blade',function(){ 678 | it('should get device type phone', function(){ 679 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Android Edition LIBRA Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 680 | assert.equal(mydevice.type, 'phone'); 681 | }); 682 | }); 683 | describe('10114.ZTE Blade',function(){ 684 | it('should get device type phone', function(){ 685 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.3.3; sv-se; Blade Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 686 | assert.equal(mydevice.type, 'phone'); 687 | }); 688 | }); 689 | describe('10115.ZTE Blade',function(){ 690 | it('should get device type phone', function(){ 691 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; es-es; ZTE-BLADE Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 692 | assert.equal(mydevice.type, 'phone'); 693 | }); 694 | }); 695 | describe('10116.ZTE Bluebelt',function(){ 696 | it('should get device type phone', function(){ 697 | var mydevice = device('ZTE Bluebelt/1.0.0/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11)'); 698 | assert.equal(mydevice.type, 'phone'); 699 | }); 700 | }); 701 | describe('10117.ZTE Bluebelt',function(){ 702 | it('should get device type phone', function(){ 703 | var mydevice = device('ZTE Bluebelt/1.0.0/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11)'); 704 | assert.equal(mydevice.type, 'phone'); 705 | }); 706 | }); 707 | describe('10118.ZTE BM-LTBU300',function(){ 708 | it('should get device type phone', function(){ 709 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; ja-jp; Light Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 710 | assert.equal(mydevice.type, 'phone'); 711 | }); 712 | }); 713 | describe('10119.ZTE BM-LTBU300',function(){ 714 | it('should get device type phone', function(){ 715 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; ja-jp; Light Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.'); 716 | assert.equal(mydevice.type, 'phone'); 717 | }); 718 | }); 719 | describe('10120.ZTE BM-LTBU300',function(){ 720 | it('should get device type phone', function(){ 721 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; ja-jp; Light Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 722 | assert.equal(mydevice.type, 'phone'); 723 | }); 724 | }); 725 | describe('10121.ZTE BM-LTBU300',function(){ 726 | it('should get device type phone', function(){ 727 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; ja-jp; Light Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.'); 728 | assert.equal(mydevice.type, 'phone'); 729 | }); 730 | }); 731 | describe('10122.ZTE C78',function(){ 732 | it('should get device type phone', function(){ 733 | var mydevice = device('ZTE-C78/1.0 SMIT-Browser/2.0.0'); 734 | assert.equal(mydevice.type, 'phone'); 735 | }); 736 | }); 737 | describe('10123.ZTE C78',function(){ 738 | it('should get device type phone', function(){ 739 | var mydevice = device('ZTE-C78/1.0 SMIT-Browser/2.0.0'); 740 | assert.equal(mydevice.type, 'phone'); 741 | }); 742 | }); 743 | describe('10124.ZTE C79',function(){ 744 | it('should get device type phone', function(){ 745 | var mydevice = device('ZTE-C79/1.0 SMIT-Browser/2.0.0'); 746 | assert.equal(mydevice.type, 'phone'); 747 | }); 748 | }); 749 | describe('10125.ZTE C79',function(){ 750 | it('should get device type phone', function(){ 751 | var mydevice = device('ZTE-C79/1.0 SMIT-Browser/2.0.0'); 752 | assert.equal(mydevice.type, 'phone'); 753 | }); 754 | }); 755 | describe('10126.ZTE CORAL400',function(){ 756 | it('should get device type phone', function(){ 757 | var mydevice = device('CORAL 400/WAP2.0'); 758 | assert.equal(mydevice.type, 'phone'); 759 | }); 760 | }); 761 | describe('10127.ZTE CORAL400',function(){ 762 | it('should get device type phone', function(){ 763 | var mydevice = device('CORAL 400/WAP2.0'); 764 | assert.equal(mydevice.type, 'phone'); 765 | }); 766 | }); 767 | describe('10128.ZTE D90',function(){ 768 | it('should get device type phone', function(){ 769 | var mydevice = device('ZTE-D90/1.0 SMIT-Browser/2.0.0'); 770 | assert.equal(mydevice.type, 'phone'); 771 | }); 772 | }); 773 | describe('10129.ZTE D90',function(){ 774 | it('should get device type phone', function(){ 775 | var mydevice = device('ZTE-D90/1.0 SMIT-Browser/2.0.0'); 776 | assert.equal(mydevice.type, 'phone'); 777 | }); 778 | }); 779 | describe('10130.ZTE D92',function(){ 780 | it('should get device type phone', function(){ 781 | var mydevice = device('ZTE-D92/1.0 SMIT-Browser/2.0.0'); 782 | assert.equal(mydevice.type, 'phone'); 783 | }); 784 | }); 785 | describe('10131.ZTE D92',function(){ 786 | it('should get device type phone', function(){ 787 | var mydevice = device('ZTE-D92/1.0 SMIT-Browser/2.0.0'); 788 | assert.equal(mydevice.type, 'phone'); 789 | }); 790 | }); 791 | describe('10132.ZTE E520',function(){ 792 | it('should get device type phone', function(){ 793 | var mydevice = device('ZTE-E520/1.0 SMIT-Browser/2.0.0'); 794 | assert.equal(mydevice.type, 'phone'); 795 | }); 796 | }); 797 | describe('10133.ZTE E520',function(){ 798 | it('should get device type phone', function(){ 799 | var mydevice = device('ZTE-E520/1.0 SMIT-Browser/2.0.0'); 800 | assert.equal(mydevice.type, 'phone'); 801 | }); 802 | }); 803 | describe('10134.ZTE e810',function(){ 804 | it('should get device type phone', function(){ 805 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11) MOVISTAR/1.0/e810/VEN_TM_SE_P180A2V1.0.1 IE Mobile/MIDP-2.0 Configuration/CLDC-1.1'); 806 | assert.equal(mydevice.type, 'phone'); 807 | }); 808 | }); 809 | describe('10135.ZTE e810',function(){ 810 | it('should get device type phone', function(){ 811 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11) MOVISTAR/1.0/e810/VEN_TM_SE_P180A2V1.0.1 IE Mobile/MIDP-2.0 Configuration/CLDC-1.1'); 812 | assert.equal(mydevice.type, 'phone'); 813 | }); 814 | }); 815 | describe('10136.ZTE F101',function(){ 816 | it('should get device type phone', function(){ 817 | var mydevice = device('ZTE-F101(RDS)/1.0 NetFront/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 818 | assert.equal(mydevice.type, 'phone'); 819 | }); 820 | }); 821 | describe('10137.ZTE F101',function(){ 822 | it('should get device type phone', function(){ 823 | var mydevice = device('ZTE-F101(RDS)/1.0 NetFront/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 824 | assert.equal(mydevice.type, 'phone'); 825 | }); 826 | }); 827 | describe('10138.ZTE F102',function(){ 828 | it('should get device type phone', function(){ 829 | var mydevice = device('ZTE-F102 H3G/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 830 | assert.equal(mydevice.type, 'phone'); 831 | }); 832 | }); 833 | describe('10139.ZTE F102',function(){ 834 | it('should get device type phone', function(){ 835 | var mydevice = device('ZTE-F102/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 836 | assert.equal(mydevice.type, 'phone'); 837 | }); 838 | }); 839 | describe('10140.ZTE F102',function(){ 840 | it('should get device type phone', function(){ 841 | var mydevice = device('ZTE-F102 H3G/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 842 | assert.equal(mydevice.type, 'phone'); 843 | }); 844 | }); 845 | describe('10141.ZTE F102',function(){ 846 | it('should get device type phone', function(){ 847 | var mydevice = device('ZTE-F102/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 848 | assert.equal(mydevice.type, 'phone'); 849 | }); 850 | }); 851 | describe('10142.ZTE F105',function(){ 852 | it('should get device type phone', function(){ 853 | var mydevice = device('ZTE-F105/1.0 ACS-NF/3.3 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 854 | assert.equal(mydevice.type, 'phone'); 855 | }); 856 | }); 857 | describe('10143.ZTE F105',function(){ 858 | it('should get device type phone', function(){ 859 | var mydevice = device('ZTE-F105/1.0 ACS-NF/3.3 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 860 | assert.equal(mydevice.type, 'phone'); 861 | }); 862 | }); 863 | describe('10144.ZTE F106-ChinaUnicom',function(){ 864 | it('should get device type phone', function(){ 865 | var mydevice = device('F106-ChinaUnicom/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 866 | assert.equal(mydevice.type, 'phone'); 867 | }); 868 | }); 869 | describe('10145.ZTE F106-ChinaUnicom',function(){ 870 | it('should get device type phone', function(){ 871 | var mydevice = device('F106-ChinaUnicom/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 872 | assert.equal(mydevice.type, 'phone'); 873 | }); 874 | }); 875 | describe('10146.ZTE F107',function(){ 876 | it('should get device type phone', function(){ 877 | var mydevice = device('ZTE-F107(3UK)/1.0 NetFront/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 878 | assert.equal(mydevice.type, 'phone'); 879 | }); 880 | }); 881 | describe('10147.ZTE F107',function(){ 882 | it('should get device type phone', function(){ 883 | var mydevice = device('ZTE-F107(3UK)/1.0 NetFront/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 884 | assert.equal(mydevice.type, 'phone'); 885 | }); 886 | }); 887 | describe('10148.ZTE F150',function(){ 888 | it('should get device type phone', function(){ 889 | var mydevice = device('ZTE-F150/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 890 | assert.equal(mydevice.type, 'phone'); 891 | }); 892 | }); 893 | describe('10149.ZTE F150',function(){ 894 | it('should get device type phone', function(){ 895 | var mydevice = device('ZTE-F150/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 896 | assert.equal(mydevice.type, 'phone'); 897 | }); 898 | }); 899 | describe('10150.ZTE F152',function(){ 900 | it('should get device type phone', function(){ 901 | var mydevice = device('ZTE-F152/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 902 | assert.equal(mydevice.type, 'phone'); 903 | }); 904 | }); 905 | describe('10151.ZTE F152',function(){ 906 | it('should get device type phone', function(){ 907 | var mydevice = device('ZTE-F152/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 908 | assert.equal(mydevice.type, 'phone'); 909 | }); 910 | }); 911 | describe('10152.ZTE F153',function(){ 912 | it('should get device type phone', function(){ 913 | var mydevice = device('ZTE-F153/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 914 | assert.equal(mydevice.type, 'phone'); 915 | }); 916 | }); 917 | describe('10153.ZTE F153',function(){ 918 | it('should get device type phone', function(){ 919 | var mydevice = device('ZTE-F153/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 920 | assert.equal(mydevice.type, 'phone'); 921 | }); 922 | }); 923 | describe('10154.ZTE F156',function(){ 924 | it('should get device type phone', function(){ 925 | var mydevice = device('ZTE-F156/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 926 | assert.equal(mydevice.type, 'phone'); 927 | }); 928 | }); 929 | describe('10155.ZTE F156',function(){ 930 | it('should get device type phone', function(){ 931 | var mydevice = device('ZTE-F156/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 932 | assert.equal(mydevice.type, 'phone'); 933 | }); 934 | }); 935 | describe('10156.ZTE F159',function(){ 936 | it('should get device type phone', function(){ 937 | var mydevice = device('ZTE-F159/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 938 | assert.equal(mydevice.type, 'phone'); 939 | }); 940 | }); 941 | describe('10157.ZTE F159',function(){ 942 | it('should get device type phone', function(){ 943 | var mydevice = device('ZTE-F159/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 944 | assert.equal(mydevice.type, 'phone'); 945 | }); 946 | }); 947 | describe('10158.ZTE F160',function(){ 948 | it('should get device type phone', function(){ 949 | var mydevice = device('ZTE-F160/1.0 NetFront/3.5 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 950 | assert.equal(mydevice.type, 'phone'); 951 | }); 952 | }); 953 | describe('10159.ZTE F160',function(){ 954 | it('should get device type phone', function(){ 955 | var mydevice = device('ZTE-F160/1.0 NetFront/3.5 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1'); 956 | assert.equal(mydevice.type, 'phone'); 957 | }); 958 | }); 959 | describe('10160.ZTE F165',function(){ 960 | it('should get device type phone', function(){ 961 | var mydevice = device('ZTE-F165/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 962 | assert.equal(mydevice.type, 'phone'); 963 | }); 964 | }); 965 | describe('10161.ZTE F165',function(){ 966 | it('should get device type phone', function(){ 967 | var mydevice = device('ZTE-F165/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 968 | assert.equal(mydevice.type, 'phone'); 969 | }); 970 | }); 971 | describe('10162.ZTE F188',function(){ 972 | it('should get device type phone', function(){ 973 | var mydevice = device('U Mobile Futsuu/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 974 | assert.equal(mydevice.type, 'phone'); 975 | }); 976 | }); 977 | describe('10163.ZTE F188',function(){ 978 | it('should get device type phone', function(){ 979 | var mydevice = device('FASTWEB-F188/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 980 | assert.equal(mydevice.type, 'phone'); 981 | }); 982 | }); 983 | describe('10164.ZTE F188',function(){ 984 | it('should get device type phone', function(){ 985 | var mydevice = device('ZTE-F188-Tigo/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 986 | assert.equal(mydevice.type, 'phone'); 987 | }); 988 | }); 989 | describe('10165.ZTE F188',function(){ 990 | it('should get device type phone', function(){ 991 | var mydevice = device('ZTE-F188/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 992 | assert.equal(mydevice.type, 'phone'); 993 | }); 994 | }); 995 | describe('10166.ZTE F188',function(){ 996 | it('should get device type phone', function(){ 997 | var mydevice = device('U Mobile Futsuu/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 998 | assert.equal(mydevice.type, 'phone'); 999 | }); 1000 | }); 1001 | describe('10167.ZTE F188',function(){ 1002 | it('should get device type phone', function(){ 1003 | var mydevice = device('FASTWEB-F188/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1004 | assert.equal(mydevice.type, 'phone'); 1005 | }); 1006 | }); 1007 | describe('10168.ZTE F188',function(){ 1008 | it('should get device type phone', function(){ 1009 | var mydevice = device('ZTE-F188-Tigo/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1010 | assert.equal(mydevice.type, 'phone'); 1011 | }); 1012 | }); 1013 | describe('10169.ZTE F188',function(){ 1014 | it('should get device type phone', function(){ 1015 | var mydevice = device('ZTE-F188/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1016 | assert.equal(mydevice.type, 'phone'); 1017 | }); 1018 | }); 1019 | describe('10170.ZTE F230',function(){ 1020 | it('should get device type phone', function(){ 1021 | var mydevice = device('F230/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1022 | assert.equal(mydevice.type, 'phone'); 1023 | }); 1024 | }); 1025 | describe('10171.ZTE F230',function(){ 1026 | it('should get device type phone', function(){ 1027 | var mydevice = device('F230/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1028 | assert.equal(mydevice.type, 'phone'); 1029 | }); 1030 | }); 1031 | describe('10172.ZTE F232',function(){ 1032 | it('should get device type phone', function(){ 1033 | var mydevice = device('ZTE-F232/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1034 | assert.equal(mydevice.type, 'phone'); 1035 | }); 1036 | }); 1037 | describe('10173.ZTE F232',function(){ 1038 | it('should get device type phone', function(){ 1039 | var mydevice = device('ZTE-F232/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1040 | assert.equal(mydevice.type, 'phone'); 1041 | }); 1042 | }); 1043 | describe('10174.ZTE F608',function(){ 1044 | it('should get device type phone', function(){ 1045 | var mydevice = device('ZTE-F608/1.0 ACS-NF/3.2 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1046 | assert.equal(mydevice.type, 'phone'); 1047 | }); 1048 | }); 1049 | describe('10175.ZTE F608',function(){ 1050 | it('should get device type phone', function(){ 1051 | var mydevice = device('ZTE-F608/1.0 ACS-NF/3.2 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1052 | assert.equal(mydevice.type, 'phone'); 1053 | }); 1054 | }); 1055 | describe('10176.ZTE F852',function(){ 1056 | it('should get device type phone', function(){ 1057 | var mydevice = device('ZTE-F852/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1058 | assert.equal(mydevice.type, 'phone'); 1059 | }); 1060 | }); 1061 | describe('10177.ZTE F852',function(){ 1062 | it('should get device type phone', function(){ 1063 | var mydevice = device('ZTE-F852/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1064 | assert.equal(mydevice.type, 'phone'); 1065 | }); 1066 | }); 1067 | describe('10178.ZTE F858',function(){ 1068 | it('should get device type phone', function(){ 1069 | var mydevice = device('ZTE-F858/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1070 | assert.equal(mydevice.type, 'phone'); 1071 | }); 1072 | }); 1073 | describe('10179.ZTE F858',function(){ 1074 | it('should get device type phone', function(){ 1075 | var mydevice = device('ZTE-F858/1.0 ACS-NF/3.2 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1076 | assert.equal(mydevice.type, 'phone'); 1077 | }); 1078 | }); 1079 | describe('10180.ZTE F860',function(){ 1080 | it('should get device type phone', function(){ 1081 | var mydevice = device('ZTE F860/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1082 | assert.equal(mydevice.type, 'phone'); 1083 | }); 1084 | }); 1085 | describe('10181.ZTE F860',function(){ 1086 | it('should get device type phone', function(){ 1087 | var mydevice = device('ZTE F860/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1088 | assert.equal(mydevice.type, 'phone'); 1089 | }); 1090 | }); 1091 | describe('10182.ZTE F868',function(){ 1092 | it('should get device type phone', function(){ 1093 | var mydevice = device('ZTE F868/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1094 | assert.equal(mydevice.type, 'phone'); 1095 | }); 1096 | }); 1097 | describe('10183.ZTE F868',function(){ 1098 | it('should get device type phone', function(){ 1099 | var mydevice = device('ZTE F868/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1100 | assert.equal(mydevice.type, 'phone'); 1101 | }); 1102 | }); 1103 | describe('10184.ZTE F870E',function(){ 1104 | it('should get device type phone', function(){ 1105 | var mydevice = device('ZTE-F870E CINN BELL/1.0 ACS-NF/3.5 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1106 | assert.equal(mydevice.type, 'phone'); 1107 | }); 1108 | }); 1109 | describe('10185.ZTE F870E',function(){ 1110 | it('should get device type phone', function(){ 1111 | var mydevice = device('ZTE-F870E CINN BELL/1.0 ACS-NF/3.5 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1112 | assert.equal(mydevice.type, 'phone'); 1113 | }); 1114 | }); 1115 | describe('10186.ZTE F912',function(){ 1116 | it('should get device type phone', function(){ 1117 | var mydevice = device('ZTE-F912/1.0 ACS-NF/3.3 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1118 | assert.equal(mydevice.type, 'phone'); 1119 | }); 1120 | }); 1121 | describe('10187.ZTE F912',function(){ 1122 | it('should get device type phone', function(){ 1123 | var mydevice = device('MD-MD3/1.0 ACS-NF/3.3 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1124 | assert.equal(mydevice.type, 'phone'); 1125 | }); 1126 | }); 1127 | describe('10188.ZTE F912',function(){ 1128 | it('should get device type phone', function(){ 1129 | var mydevice = device('ZTE-F912/1.0 ACS-NF/3.3 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1130 | assert.equal(mydevice.type, 'phone'); 1131 | }); 1132 | }); 1133 | describe('10189.ZTE F912',function(){ 1134 | it('should get device type phone', function(){ 1135 | var mydevice = device('MD-MD3/1.0 ACS-NF/3.3 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1136 | assert.equal(mydevice.type, 'phone'); 1137 | }); 1138 | }); 1139 | describe('10190.ZTE F950',function(){ 1140 | it('should get device type phone', function(){ 1141 | var mydevice = device('ZTE-F950/1.0 ACS-NF/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1142 | assert.equal(mydevice.type, 'phone'); 1143 | }); 1144 | }); 1145 | describe('10191.ZTE F950',function(){ 1146 | it('should get device type phone', function(){ 1147 | var mydevice = device('ZTE-F950/1.0 ACS-NF/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1148 | assert.equal(mydevice.type, 'phone'); 1149 | }); 1150 | }); 1151 | describe('10192.ZTE F951',function(){ 1152 | it('should get device type phone', function(){ 1153 | var mydevice = device('ZTE-F951-Orange/1.0 ACS-NF/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1154 | assert.equal(mydevice.type, 'phone'); 1155 | }); 1156 | }); 1157 | describe('10193.ZTE F951',function(){ 1158 | it('should get device type phone', function(){ 1159 | var mydevice = device('ZTE-F951-Orange/1.0 ACS-NF/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1160 | assert.equal(mydevice.type, 'phone'); 1161 | }); 1162 | }); 1163 | describe('10194.ZTE G S213',function(){ 1164 | it('should get device type phone', function(){ 1165 | var mydevice = device('ZTE-G S213/WAP2.0'); 1166 | assert.equal(mydevice.type, 'phone'); 1167 | }); 1168 | }); 1169 | describe('10195.ZTE G S213',function(){ 1170 | it('should get device type phone', function(){ 1171 | var mydevice = device('ZTE-G S213/WAP2.0'); 1172 | assert.equal(mydevice.type, 'phone'); 1173 | }); 1174 | }); 1175 | describe('10196.ZTE G X760',function(){ 1176 | it('should get device type phone', function(){ 1177 | var mydevice = device('ZTE-G X760'); 1178 | assert.equal(mydevice.type, 'phone'); 1179 | }); 1180 | }); 1181 | describe('10197.ZTE G X760',function(){ 1182 | it('should get device type phone', function(){ 1183 | var mydevice = device('ZTE-G-X760-vegas-orange/X760_Z15UK_FS_B07A105_ORANGE Obigo/Q03C'); 1184 | assert.equal(mydevice.type, 'phone'); 1185 | }); 1186 | }); 1187 | describe('10198.ZTE G X760',function(){ 1188 | it('should get device type phone', function(){ 1189 | var mydevice = device('ZTE-X760-Optimus/X760_Z15PT_Pt_BFFA100_OPTIMUS Obigo/Q03C'); 1190 | assert.equal(mydevice.type, 'phone'); 1191 | }); 1192 | }); 1193 | describe('10199.ZTE G X760',function(){ 1194 | it('should get device type phone', function(){ 1195 | var mydevice = device('ZTE-SAGE/X671_V1_Z1_ES_DFFA102 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1196 | assert.equal(mydevice.type, 'phone'); 1197 | }); 1198 | }); 1199 | describe('10200.ZTE G X760',function(){ 1200 | it('should get device type phone', function(){ 1201 | var mydevice = device('ZTE-G X760'); 1202 | assert.equal(mydevice.type, 'phone'); 1203 | }); 1204 | }); 1205 | describe('10201.ZTE G X760',function(){ 1206 | it('should get device type phone', function(){ 1207 | var mydevice = device('ZTE-G-X760-vegas-orange/X760_Z15UK_FS_B07A105_ORANGE Obigo/Q03C'); 1208 | assert.equal(mydevice.type, 'phone'); 1209 | }); 1210 | }); 1211 | describe('10202.ZTE G X760',function(){ 1212 | it('should get device type phone', function(){ 1213 | var mydevice = device('ZTE-X760-Optimus/X760_Z15PT_Pt_BFFA100_OPTIMUS Obigo/Q03C'); 1214 | assert.equal(mydevice.type, 'phone'); 1215 | }); 1216 | }); 1217 | describe('10203.ZTE G X760',function(){ 1218 | it('should get device type phone', function(){ 1219 | var mydevice = device('ZTE-SAGE/X671_V1_Z1_ES_DFFA102 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1220 | assert.equal(mydevice.type, 'phone'); 1221 | }); 1222 | }); 1223 | describe('10204.ZTE G X761',function(){ 1224 | it('should get device type phone', function(){ 1225 | var mydevice = device('ZTE-G-X761/X761_Z1_S_A07A100 Obigo/Q03C'); 1226 | assert.equal(mydevice.type, 'phone'); 1227 | }); 1228 | }); 1229 | describe('10205.ZTE G X761',function(){ 1230 | it('should get device type phone', function(){ 1231 | var mydevice = device('ZTE-G-X761/X761_Z1_S_A07A100 Obigo/Q03C'); 1232 | assert.equal(mydevice.type, 'phone'); 1233 | }); 1234 | }); 1235 | describe('10206.ZTE G X960',function(){ 1236 | it('should get device type phone', function(){ 1237 | var mydevice = device('SFR342/X960_V2_Z0_C1_BFFA100 Obigo/Q03C'); 1238 | assert.equal(mydevice.type, 'phone'); 1239 | }); 1240 | }); 1241 | describe('10207.ZTE G X960',function(){ 1242 | it('should get device type phone', function(){ 1243 | var mydevice = device('SFR342/X960_V2_Z0_C1_BFFA100 Obigo/Q03C'); 1244 | assert.equal(mydevice.type, 'phone'); 1245 | }); 1246 | }); 1247 | describe('10208.ZTE GD180',function(){ 1248 | it('should get device type phone', function(){ 1249 | var mydevice = device('ZTE-GD180'); 1250 | assert.equal(mydevice.type, 'phone'); 1251 | }); 1252 | }); 1253 | describe('10209.ZTE GD180',function(){ 1254 | it('should get device type phone', function(){ 1255 | var mydevice = device('ZTE-GD180'); 1256 | assert.equal(mydevice.type, 'phone'); 1257 | }); 1258 | }); 1259 | describe('10210.ZTE i766',function(){ 1260 | it('should get device type phone', function(){ 1261 | var mydevice = device('ZTE-G i766'); 1262 | assert.equal(mydevice.type, 'phone'); 1263 | }); 1264 | }); 1265 | describe('10211.ZTE i766',function(){ 1266 | it('should get device type phone', function(){ 1267 | var mydevice = device('ZTE-G i766'); 1268 | assert.equal(mydevice.type, 'phone'); 1269 | }); 1270 | }); 1271 | describe('10212.ZTE Light Pro',function(){ 1272 | it('should get device type phone', function(){ 1273 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; es-es; Light Pro Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 1274 | assert.equal(mydevice.type, 'phone'); 1275 | }); 1276 | }); 1277 | describe('10213.ZTE Light Pro',function(){ 1278 | it('should get device type phone', function(){ 1279 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.2; es-es; Light Pro Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); 1280 | assert.equal(mydevice.type, 'phone'); 1281 | }); 1282 | }); 1283 | describe('10214.ZTE Link',function(){ 1284 | it('should get device type phone', function(){ 1285 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; fr-fr; ZTE-LINK Build/Donut) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 1286 | assert.equal(mydevice.type, 'phone'); 1287 | }); 1288 | }); 1289 | describe('10215.ZTE Link',function(){ 1290 | it('should get device type phone', function(){ 1291 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 1.6; fr-fr; ZTE-LINK Build/Donut) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 1292 | assert.equal(mydevice.type, 'phone'); 1293 | }); 1294 | }); 1295 | describe('10216.ZTE MD301H',function(){ 1296 | it('should get device type phone', function(){ 1297 | var mydevice = device('MD301H/1.0 ACS-NF/3.4 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1298 | assert.equal(mydevice.type, 'phone'); 1299 | }); 1300 | }); 1301 | describe('10217.ZTE MD301H',function(){ 1302 | it('should get device type phone', function(){ 1303 | var mydevice = device('MD301H/1.0 ACS-NF/3.4 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1304 | assert.equal(mydevice.type, 'phone'); 1305 | }); 1306 | }); 1307 | describe('10218.ZTE Movistar Link',function(){ 1308 | it('should get device type phone', function(){ 1309 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; es-us; Movistar Link Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1310 | assert.equal(mydevice.type, 'phone'); 1311 | }); 1312 | }); 1313 | describe('10219.ZTE Movistar Link',function(){ 1314 | it('should get device type phone', function(){ 1315 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; es-us; Movistar Link Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1316 | assert.equal(mydevice.type, 'phone'); 1317 | }); 1318 | }); 1319 | describe('10220.ZTE MTC 535',function(){ 1320 | it('should get device type phone', function(){ 1321 | var mydevice = device('MTC535/REF-RU-MTS-P103D2V1.0.1/2.0 Profile/MIDP-2.0'); 1322 | assert.equal(mydevice.type, 'phone'); 1323 | }); 1324 | }); 1325 | describe('10221.ZTE MTC 535',function(){ 1326 | it('should get device type phone', function(){ 1327 | var mydevice = device('MTC535/REF-RU-MTS-P103D2V1.0.1/2.0 Profile/MIDP-2.0'); 1328 | assert.equal(mydevice.type, 'phone'); 1329 | }); 1330 | }); 1331 | describe('10222.ZTE MTC 916',function(){ 1332 | it('should get device type phone', function(){ 1333 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ru-ru; MTC 916 Build/ERE27) AppleWebKit/530.17 (KHTML,like Gecko) Version/4.0 Mobile Safari/530.17'); 1334 | assert.equal(mydevice.type, 'phone'); 1335 | }); 1336 | }); 1337 | describe('10223.ZTE MTC 916',function(){ 1338 | it('should get device type phone', function(){ 1339 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ru-ru; MTC 916 Build/ERE27) AppleWebKit/530.17 (KHTML,like Gecko) Version/4.0 Mobile Safari/530.17'); 1340 | assert.equal(mydevice.type, 'phone'); 1341 | }); 1342 | }); 1343 | describe('10224.ZTE MTC 918',function(){ 1344 | it('should get device type phone', function(){ 1345 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ru-ru; MTC 918 Build/ERE27) AppleWebKit/530.17 (KHTML,like Gecko) Version/4.0 Mobile Safari/530.17'); 1346 | assert.equal(mydevice.type, 'phone'); 1347 | }); 1348 | }); 1349 | describe('10225.ZTE MTC 918',function(){ 1350 | it('should get device type phone', function(){ 1351 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; ru-ru; MTC 918 Build/ERE27) AppleWebKit/530.17 (KHTML,like Gecko) Version/4.0 Mobile Safari/530.17'); 1352 | assert.equal(mydevice.type, 'phone'); 1353 | }); 1354 | }); 1355 | describe('10226.ZTE MTC840',function(){ 1356 | it('should get device type phone', function(){ 1357 | var mydevice = device('ZTE-MTC 840/1.0 NetFront/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1358 | assert.equal(mydevice.type, 'phone'); 1359 | }); 1360 | }); 1361 | describe('10227.ZTE MTC840',function(){ 1362 | it('should get device type phone', function(){ 1363 | var mydevice = device('ZTE-MTC 840/1.0 NetFront/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1364 | assert.equal(mydevice.type, 'phone'); 1365 | }); 1366 | }); 1367 | describe('10228.ZTE MTV 4.0',function(){ 1368 | it('should get device type phone', function(){ 1369 | var mydevice = device('MTV 4.0/1.0 ACS-NF/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1370 | assert.equal(mydevice.type, 'phone'); 1371 | }); 1372 | }); 1373 | describe('10229.ZTE MTV 4.0',function(){ 1374 | it('should get device type phone', function(){ 1375 | var mydevice = device('MTV 4.0/1.0 ACS-NF/3.5 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1376 | assert.equal(mydevice.type, 'phone'); 1377 | }); 1378 | }); 1379 | describe('10230.ZTE N281',function(){ 1380 | it('should get device type phone', function(){ 1381 | var mydevice = device('ZTE-G-N281-Miami-Orange/ORANGE_ENG_EN_P107A3V1.0.4 Obigo/Q03C'); 1382 | assert.equal(mydevice.type, 'phone'); 1383 | }); 1384 | }); 1385 | describe('10231.ZTE N281',function(){ 1386 | it('should get device type phone', function(){ 1387 | var mydevice = device('ZTE-G-N281-Miami-Orange/ORANGE_ENG_EN_P107A3V1.0.4 Obigo/Q03C'); 1388 | assert.equal(mydevice.type, 'phone'); 1389 | }); 1390 | }); 1391 | describe('10232.ZTE N600',function(){ 1392 | it('should get device type phone', function(){ 1393 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; zh-cn; ZTE-C N600 Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 1394 | assert.equal(mydevice.type, 'phone'); 1395 | }); 1396 | }); 1397 | describe('10233.ZTE N600',function(){ 1398 | it('should get device type phone', function(){ 1399 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; zh-cn; ZTE-C N600 Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 1400 | assert.equal(mydevice.type, 'phone'); 1401 | }); 1402 | }); 1403 | describe('10234.ZTE Orange San Francisco',function(){ 1404 | it('should get device type phone', function(){ 1405 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; bg-bg; Orange San Francisco Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 1406 | assert.equal(mydevice.type, 'phone'); 1407 | }); 1408 | }); 1409 | describe('10235.ZTE Orange San Francisco',function(){ 1410 | it('should get device type phone', function(){ 1411 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; de-at; Orange San Francisco Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1412 | assert.equal(mydevice.type, 'phone'); 1413 | }); 1414 | }); 1415 | describe('10236.ZTE Orange San Francisco',function(){ 1416 | it('should get device type phone', function(){ 1417 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; fr-be; San Francisco Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1418 | assert.equal(mydevice.type, 'phone'); 1419 | }); 1420 | }); 1421 | describe('10237.ZTE Orange San Francisco',function(){ 1422 | it('should get device type phone', function(){ 1423 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; bg-bg; Orange San Francisco Build/ERE27) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2'); 1424 | assert.equal(mydevice.type, 'phone'); 1425 | }); 1426 | }); 1427 | describe('10238.ZTE Orange San Francisco',function(){ 1428 | it('should get device type phone', function(){ 1429 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; de-at; Orange San Francisco Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1430 | assert.equal(mydevice.type, 'phone'); 1431 | }); 1432 | }); 1433 | describe('10239.ZTE Orange San Francisco',function(){ 1434 | it('should get device type phone', function(){ 1435 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; fr-be; San Francisco Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1436 | assert.equal(mydevice.type, 'phone'); 1437 | }); 1438 | }); 1439 | describe('10240.ZTE PLSC77ZTE',function(){ 1440 | it('should get device type phone', function(){ 1441 | var mydevice = device('ZTE-C77/1.0 SMIT-Browser/2.0.0'); 1442 | assert.equal(mydevice.type, 'phone'); 1443 | }); 1444 | }); 1445 | describe('10241.ZTE PLSC77ZTE',function(){ 1446 | it('should get device type phone', function(){ 1447 | var mydevice = device('ZTE-C77/1.0 SMIT-Browser/2.0.0'); 1448 | assert.equal(mydevice.type, 'phone'); 1449 | }); 1450 | }); 1451 | describe('10242.ZTE PM1107 Smart',function(){ 1452 | it('should get device type phone', function(){ 1453 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; it-it; PM1107 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1454 | assert.equal(mydevice.type, 'phone'); 1455 | }); 1456 | }); 1457 | describe('10243.ZTE PM1107 Smart',function(){ 1458 | it('should get device type phone', function(){ 1459 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; it-it; PM1107 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1460 | assert.equal(mydevice.type, 'phone'); 1461 | }); 1462 | }); 1463 | describe('10244.ZTE PM1152 Tabula',function(){ 1464 | it('should get device type phone', function(){ 1465 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; it-it; PM1152 Tabula (V9) Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1466 | assert.equal(mydevice.type, 'phone'); 1467 | }); 1468 | }); 1469 | describe('10245.ZTE PM1152 Tabula',function(){ 1470 | it('should get device type phone', function(){ 1471 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; it-it; PM1152 Tabula (V9) Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1472 | assert.equal(mydevice.type, 'phone'); 1473 | }); 1474 | }); 1475 | describe('10246.ZTE R100',function(){ 1476 | it('should get device type phone', function(){ 1477 | var mydevice = device('ZTE-R100/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1478 | assert.equal(mydevice.type, 'phone'); 1479 | }); 1480 | }); 1481 | describe('10247.ZTE R100',function(){ 1482 | it('should get device type phone', function(){ 1483 | var mydevice = device('ZTE-R100/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1484 | assert.equal(mydevice.type, 'phone'); 1485 | }); 1486 | }); 1487 | describe('10248.ZTE R220',function(){ 1488 | it('should get device type phone', function(){ 1489 | var mydevice = device('SFR114/g8eA/FES-FR-SFR-P103D1V1.0.1/R220/2.0 Profile/MIDP-2.0'); 1490 | assert.equal(mydevice.type, 'phone'); 1491 | }); 1492 | }); 1493 | describe('10249.ZTE R220',function(){ 1494 | it('should get device type phone', function(){ 1495 | var mydevice = device('ZTE-R220/1.0/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1496 | assert.equal(mydevice.type, 'phone'); 1497 | }); 1498 | }); 1499 | describe('10250.ZTE R220',function(){ 1500 | it('should get device type phone', function(){ 1501 | var mydevice = device('SFR114/g8eA/FES-FR-SFR-P103D1V1.0.1/R220/2.0 Profile/MIDP-2.0'); 1502 | assert.equal(mydevice.type, 'phone'); 1503 | }); 1504 | }); 1505 | describe('10251.ZTE R220',function(){ 1506 | it('should get device type phone', function(){ 1507 | var mydevice = device('ZTE-R220/1.0/WAP2.0 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1508 | assert.equal(mydevice.type, 'phone'); 1509 | }); 1510 | }); 1511 | describe('10252.ZTE R230',function(){ 1512 | it('should get device type phone', function(){ 1513 | var mydevice = device('ZTE-R230/2.0 Profile/MIDP-2.0'); 1514 | assert.equal(mydevice.type, 'phone'); 1515 | }); 1516 | }); 1517 | describe('10253.ZTE R230',function(){ 1518 | it('should get device type phone', function(){ 1519 | var mydevice = device('ZTE-R230/2.0 Profile/MIDP-2.0'); 1520 | assert.equal(mydevice.type, 'phone'); 1521 | }); 1522 | }); 1523 | describe('10254.ZTE R6',function(){ 1524 | it('should get device type phone', function(){ 1525 | var mydevice = device('ZTE-R6/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1526 | assert.equal(mydevice.type, 'phone'); 1527 | }); 1528 | }); 1529 | describe('10255.ZTE R6',function(){ 1530 | it('should get device type phone', function(){ 1531 | var mydevice = device('ZTE-R6/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1532 | assert.equal(mydevice.type, 'phone'); 1533 | }); 1534 | }); 1535 | describe('10256.ZTE R830',function(){ 1536 | it('should get device type phone', function(){ 1537 | var mydevice = device('R830/2.0 Profile/MIDP-2.0'); 1538 | assert.equal(mydevice.type, 'phone'); 1539 | }); 1540 | }); 1541 | describe('10257.ZTE R830',function(){ 1542 | it('should get device type phone', function(){ 1543 | var mydevice = device('R830/2.0 Profile/MIDP-2.0'); 1544 | assert.equal(mydevice.type, 'phone'); 1545 | }); 1546 | }); 1547 | describe('10258.ZTE T100',function(){ 1548 | it('should get device type phone', function(){ 1549 | var mydevice = device('ZTE-T100/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1550 | assert.equal(mydevice.type, 'phone'); 1551 | }); 1552 | }); 1553 | describe('10259.ZTE T100',function(){ 1554 | it('should get device type phone', function(){ 1555 | var mydevice = device('ZTE-T100Life/1.0 NetFront/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1556 | assert.equal(mydevice.type, 'phone'); 1557 | }); 1558 | }); 1559 | describe('10260.ZTE T100',function(){ 1560 | it('should get device type phone', function(){ 1561 | var mydevice = device('ZTE-T100(Life)/1.0 NetFront/3.4 QTV5.1 Profile /MIDP-2.0 Configuration/CLDC-1.1'); 1562 | assert.equal(mydevice.type, 'phone'); 1563 | }); 1564 | }); 1565 | describe('10261.ZTE T100',function(){ 1566 | it('should get device type phone', function(){ 1567 | var mydevice = device('ZTE-T100/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1568 | assert.equal(mydevice.type, 'phone'); 1569 | }); 1570 | }); 1571 | describe('10262.ZTE T100',function(){ 1572 | it('should get device type phone', function(){ 1573 | var mydevice = device('ZTE-T100Life/1.0 NetFront/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1574 | assert.equal(mydevice.type, 'phone'); 1575 | }); 1576 | }); 1577 | describe('10263.ZTE T100',function(){ 1578 | it('should get device type phone', function(){ 1579 | var mydevice = device('ZTE-T100(Life)/1.0 NetFront/3.4 QTV5.1 Profile /MIDP-2.0 Configuration/CLDC-1.1'); 1580 | assert.equal(mydevice.type, 'phone'); 1581 | }); 1582 | }); 1583 | describe('10264.ZTE T106',function(){ 1584 | it('should get device type phone', function(){ 1585 | var mydevice = device('ZTE-T106/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1586 | assert.equal(mydevice.type, 'phone'); 1587 | }); 1588 | }); 1589 | describe('10265.ZTE T106',function(){ 1590 | it('should get device type phone', function(){ 1591 | var mydevice = device('ZTE-T106/1.0 ACS-NF/3.4 QTV5.1 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1592 | assert.equal(mydevice.type, 'phone'); 1593 | }); 1594 | }); 1595 | describe('10266.ZTE T6',function(){ 1596 | it('should get device type phone', function(){ 1597 | var mydevice = device('ZTE-T6/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1598 | assert.equal(mydevice.type, 'phone'); 1599 | }); 1600 | }); 1601 | describe('10267.ZTE T6',function(){ 1602 | it('should get device type phone', function(){ 1603 | var mydevice = device('ZTE-T6/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1604 | assert.equal(mydevice.type, 'phone'); 1605 | }); 1606 | }); 1607 | describe('10268.ZTE T90',function(){ 1608 | it('should get device type phone', function(){ 1609 | var mydevice = device('ZTE-T90/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1610 | assert.equal(mydevice.type, 'phone'); 1611 | }); 1612 | }); 1613 | describe('10269.ZTE T90',function(){ 1614 | it('should get device type phone', function(){ 1615 | var mydevice = device('ZTE-T90/1.0 ACS-NF/3.4 QTV2.4 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1616 | assert.equal(mydevice.type, 'phone'); 1617 | }); 1618 | }); 1619 | describe('10270.ZTE U X850',function(){ 1620 | it('should get device type phone', function(){ 1621 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; es-us; ZTE-U X850 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1622 | assert.equal(mydevice.type, 'phone'); 1623 | }); 1624 | }); 1625 | describe('10271.ZTE U X850',function(){ 1626 | it('should get device type phone', function(){ 1627 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; es-us; ZTE-U X850 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1628 | assert.equal(mydevice.type, 'phone'); 1629 | }); 1630 | }); 1631 | describe('10272.ZTE V8301',function(){ 1632 | it('should get device type phone', function(){ 1633 | var mydevice = device('ZTE-V8301/MB6801_V1_Z1_VN_F1BPa101 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1634 | assert.equal(mydevice.type, 'phone'); 1635 | }); 1636 | }); 1637 | describe('10273.ZTE V8301',function(){ 1638 | it('should get device type phone', function(){ 1639 | var mydevice = device('ZTE-V8301/MB6801_V1_Z1_VN_F1BPa101 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1640 | assert.equal(mydevice.type, 'phone'); 1641 | }); 1642 | }); 1643 | describe('10274.ZTE V9',function(){ 1644 | it('should get device type phone', function(){ 1645 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; sl-si; V9 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1646 | assert.equal(mydevice.type, 'phone'); 1647 | }); 1648 | }); 1649 | describe('10275.ZTE V9',function(){ 1650 | it('should get device type phone', function(){ 1651 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; sl-si; V9 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1652 | assert.equal(mydevice.type, 'phone'); 1653 | }); 1654 | }); 1655 | describe('10276.ZTE VF945',function(){ 1656 | it('should get device type phone', function(){ 1657 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; VF945 Build/VF945_V02c_DE) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1658 | assert.equal(mydevice.type, 'phone'); 1659 | }); 1660 | }); 1661 | describe('10277.ZTE VF945',function(){ 1662 | it('should get device type phone', function(){ 1663 | var mydevice = device('Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; VF945 Build/VF945_V02c_DE) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17'); 1664 | assert.equal(mydevice.type, 'phone'); 1665 | }); 1666 | }); 1667 | describe('10278.ZTE Vodafone 1231',function(){ 1668 | it('should get device type phone', function(){ 1669 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11) Vodafone/1.0/Vodafone1231/IE Mobile/MIDP-2.0 Configuration/CLDC-1.1 320 x 240'); 1670 | assert.equal(mydevice.type, 'phone'); 1671 | }); 1672 | }); 1673 | describe('10279.ZTE Vodafone 1231',function(){ 1674 | it('should get device type phone', function(){ 1675 | var mydevice = device('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11) Vodafone/1.0/Vodafone1231/IE Mobile/MIDP-2.0 Configuration/CLDC-1.1 320 x 240'); 1676 | assert.equal(mydevice.type, 'phone'); 1677 | }); 1678 | }); 1679 | describe('10280.ZTE Vodafone351',function(){ 1680 | it('should get device type phone', function(){ 1681 | var mydevice = device('Vodafone/1.0/0Vodafone351/VF 351-MTK 6253-V02a-February 282011-Vodafone ES Browser/OperaMini/v4.2.1141-2011-03-03(524288)'); 1682 | assert.equal(mydevice.type, 'phone'); 1683 | }); 1684 | }); 1685 | describe('10281.ZTE Vodafone351',function(){ 1686 | it('should get device type phone', function(){ 1687 | var mydevice = device('Vodafone/1.0/0Vodafone351/VF 351-MTK 6253-V02a-February 282011-Vodafone ES Browser/OperaMini/v4.2.1141-2011-03-03(524288)'); 1688 | assert.equal(mydevice.type, 'phone'); 1689 | }); 1690 | }); 1691 | describe('10282.ZTE Vodafone547',function(){ 1692 | it('should get device type phone', function(){ 1693 | var mydevice = device('Mozilla/4.0(Vodafone/1.0/Vodafone547/VF_GER_DE_P107A4V1.0.1/Obigo Q03C/MIDP-2.0 Configuration/CLDC-1.1)'); 1694 | assert.equal(mydevice.type, 'phone'); 1695 | }); 1696 | }); 1697 | describe('10283.ZTE Vodafone547',function(){ 1698 | it('should get device type phone', function(){ 1699 | var mydevice = device('Mozilla/4.0(Vodafone/1.0/Vodafone547/VF_UK_EN_P107A4V1.1.0/Obigo Q03C/MIDP-2.0 Configuration/CLDC-1.1)'); 1700 | assert.equal(mydevice.type, 'phone'); 1701 | }); 1702 | }); 1703 | describe('10284.ZTE Vodafone547',function(){ 1704 | it('should get device type phone', function(){ 1705 | var mydevice = device('Mozilla/4.0(Vodafone/1.0/Vodafone547/VF_GER_DE_P107A4V1.0.1/Obigo Q03C/MIDP-2.0 Configuration/CLDC-1.1)'); 1706 | assert.equal(mydevice.type, 'phone'); 1707 | }); 1708 | }); 1709 | describe('10285.ZTE Vodafone547',function(){ 1710 | it('should get device type phone', function(){ 1711 | var mydevice = device('Mozilla/4.0(Vodafone/1.0/Vodafone547/VF_UK_EN_P107A4V1.1.0/Obigo Q03C/MIDP-2.0 Configuration/CLDC-1.1)'); 1712 | assert.equal(mydevice.type, 'phone'); 1713 | }); 1714 | }); 1715 | describe('10286.ZTE X991',function(){ 1716 | it('should get device type phone', function(){ 1717 | var mydevice = device('ZTE-G-X991-Rio-orange/X991_V1_Z2_FRES_D18F109 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1718 | assert.equal(mydevice.type, 'phone'); 1719 | }); 1720 | }); 1721 | describe('10287.ZTE X991',function(){ 1722 | it('should get device type phone', function(){ 1723 | var mydevice = device('ZTE-G-X991-Rio-orange/X991_V1_Z2_FRES_D18F109 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1724 | assert.equal(mydevice.type, 'phone'); 1725 | }); 1726 | }); 1727 | describe('10288.ZTE Yoigo F188',function(){ 1728 | it('should get device type phone', function(){ 1729 | var mydevice = device('Yoigo F188/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1730 | assert.equal(mydevice.type, 'phone'); 1731 | }); 1732 | }); 1733 | describe('10289.ZTE Yoigo F188',function(){ 1734 | it('should get device type phone', function(){ 1735 | var mydevice = device('Yoigo F188/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1736 | assert.equal(mydevice.type, 'phone'); 1737 | }); 1738 | }); 1739 | describe('10290.ZTE Yoigo F233',function(){ 1740 | it('should get device type phone', function(){ 1741 | var mydevice = device('Yoigo F233/1.0 ACS-NF/3.4 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1742 | assert.equal(mydevice.type, 'phone'); 1743 | }); 1744 | }); 1745 | describe('10291.ZTE Yoigo F233',function(){ 1746 | it('should get device type phone', function(){ 1747 | var mydevice = device('Yoigo F233/1.0 ACS-NF/3.4 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1748 | assert.equal(mydevice.type, 'phone'); 1749 | }); 1750 | }); 1751 | describe('10292.ZTE ZTE X990',function(){ 1752 | it('should get device type phone', function(){ 1753 | var mydevice = device('ZTE-X990/X990_V2_Z5_FR_D13F104 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1754 | assert.equal(mydevice.type, 'phone'); 1755 | }); 1756 | }); 1757 | describe('10293.ZTE ZTE X990',function(){ 1758 | it('should get device type phone', function(){ 1759 | var mydevice = device('ZTE-X990/X990_V2_Z5_FR_D13F104 Profile/MIDP-2.0 Configuration/CLDC-1.1 Obigo/Q03C'); 1760 | assert.equal(mydevice.type, 'phone'); 1761 | }); 1762 | }); 1763 | describe('10294.ZTE ZTE-F233',function(){ 1764 | it('should get device type phone', function(){ 1765 | var mydevice = device('ZTE-F233/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1766 | assert.equal(mydevice.type, 'phone'); 1767 | }); 1768 | }); 1769 | describe('10295.ZTE ZTE-F233',function(){ 1770 | it('should get device type phone', function(){ 1771 | var mydevice = device('ZTE-F233/1.0 ACS-NF/3.3 QTV5.02 Profile/MIDP-2.0 Configuration/CLDC-1.1'); 1772 | assert.equal(mydevice.type, 'phone'); 1773 | }); 1774 | }); 1775 | describe('Phone device type check with is method', function () { 1776 | it('should get true', function () { 1777 | var mydevice = device('iPhone'); 1778 | assert.equal(mydevice.is('phone'), true); 1779 | }); 1780 | }); 1781 | }); --------------------------------------------------------------------------------