Annotation of kupuMPIWG/plone/tests/test_browserSupportsKupu.py, revision 1.1

1.1     ! dwinter     1: ##############################################################################
        !             2: #
        !             3: # Copyright (c) 2003-2005 Kupu Contributors. All rights reserved.
        !             4: #
        !             5: # This software is distributed under the terms of the Kupu
        !             6: # License. See LICENSE.txt for license text. For a list of Kupu
        !             7: # Contributors see CREDITS.txt.
        !             8: #
        !             9: ##############################################################################
        !            10: """Test browserSupportsKupu
        !            11: 
        !            12: $Id: test_browserSupportsKupu.py 14851 2005-07-21 11:39:15Z duncan $
        !            13: """
        !            14: 
        !            15: import os, sys
        !            16: import time
        !            17: if __name__ == '__main__':
        !            18:     execfile(os.path.join(sys.path[0], 'framework.py'))
        !            19: 
        !            20: from Testing import ZopeTestCase
        !            21: from Products.CMFPlone.tests import PloneTestCase
        !            22: from Products.CMFPlone.tests.PloneTestCase import portal_name, portal_owner
        !            23: from AccessControl.SecurityManagement import newSecurityManager, noSecurityManager
        !            24: 
        !            25: def installKupu(quiet=0):
        !            26:     _start = time.time()
        !            27:     if not quiet: ZopeTestCase._print('Adding Kupu ... ')
        !            28: 
        !            29:     ZopeTestCase.installProduct('kupu')
        !            30: 
        !            31:     # Install kupu into the test site. Done here because otherwise
        !            32:     # it slows the tests down a lot on Plone 2.1
        !            33:     app = ZopeTestCase.app()
        !            34:     user = app.acl_users.getUserById(portal_owner).__of__(app.acl_users)
        !            35:     newSecurityManager(None, user)
        !            36: 
        !            37:     portal = app[portal_name]
        !            38:     quickinstaller = portal.portal_quickinstaller
        !            39:     quickinstaller.installProduct('kupu')
        !            40: 
        !            41:     # Log out
        !            42:     noSecurityManager()
        !            43:     get_transaction().commit()
        !            44:     if not quiet: ZopeTestCase._print('done (%.3fs)\n' \
        !            45:                                       % (time.time()-_start,))
        !            46:     ZopeTestCase.close(app)
        !            47: 
        !            48: installKupu()
        !            49: 
        !            50: class TestBrowserSupportsKupu(PloneTestCase.PloneTestCase):
        !            51: 
        !            52:     def afterSetUp(self):
        !            53:         md = self.portal.portal_memberdata
        !            54:         md._updateProperty('wysiwyg_editor', 'Kupu')
        !            55:         #self.qi = self.portal.portal_quickinstaller
        !            56:         #self.qi.installProduct('kupu')
        !            57:         #self.script = self.portal.portal_skins.kupu_plone.browserSupportsKupu
        !            58:         self.script = self.portal.kupu_library_tool.isKupuEnabled
        !            59: 
        !            60: # List of tuples of id, signature, os, version, browser
        !            61: # browsers are:
        !            62: # 1, MOZILLA            -- supported 1.4 and above
        !            63: # 2, INTERNET_EXPORER   -- supported 5.5 and above
        !            64: # 3, OPERA              -- not supported
        !            65: # 4, KONQUEROR          -- not supported
        !            66: # 5, NETSCAPE           -- not supported
        !            67: # 6, OTHER              -- not supported
        !            68: # 7, GOOGLE             -- not supported
        !            69: # 8, YAHOO              -- not supported
        !            70: # 9, GALEON             -- not supported
        !            71: 
        !            72: (MOZILLA, INTERNET_EXPLORER, OPERA, KONQUEROR, NETSCAPE, OTHER,
        !            73:  GOOGLE, YAHOO, GALEON) = range(1,10)
        !            74: 
        !            75: BROWSERNAMES = ['NOTUSED', 'Mozilla', 'Internet Explorer', 'Opera',
        !            76:                 'Konqueror', 'Netscape', 'Other', 'Google',
        !            77:                 'Yahoo', 'Galeon' ]
        !            78:  
        !            79: SUPPORTED = {
        !            80:     MOZILLA: (1,3,1),
        !            81:     INTERNET_EXPLORER: (5,5),
        !            82: }
        !            83: 
        !            84: BROWSERS = (
        !            85:     (1, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; NetCaptor 7.2.0)', 'Windows XP', '6.0', 2),
        !            86:     (2, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90)', 'Windows 95', '5.5', 2),
        !            87:     (3, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)', 'Windows XP', '6.0', 2),
        !            88:     (4, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !            89:     (5, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; {F69FABBA-7A20-4724-93CB-A717BBB0AB5A}; MyIE2; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !            90:     (6, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Crazy Browser 1.0.5)', 'Windows 2000', '6.0', 2),
        !            91:     (7, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)', 'Windows 2000', '6.0', 2),
        !            92:     (8, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; .NET CLR 1.0.3705)', 'Windows 2000', '5.01', 2),
        !            93:     (9, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows 2000', '6.0', 2),
        !            94:     (10, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; Alexa Toolbar)', 'Windows XP', '6.0', 2),
        !            95:     (11, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Q312461)', 'Windows XP', '6.0', 2),
        !            96:     (12, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows 98)', 'Windows 95', '5.01', 2),
        !            97:     (13, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)', 'Windows 95', '6.0', 2),
        !            98:     (14, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)', 'Windows 2000', '5.01', 2),
        !            99:     (15, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; {514CEB04-E26C-4724-B559-3BBF7D079CF9}; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           100:     (16, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)', 'Windows 2000', '6.0', 2),
        !           101:     (17, 'Googlebot/2.1 (+http://www.googlebot.com/bot.html)', '', '2.1', 7),
        !           102:     (18, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040206 Firefox/0.8', 'Windows XP', '1.6', 1),
        !           103:     (19, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           104:     (20, 'Java1.4.0', None, None, 6),
        !           105:     (21, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0)', 'Windows NT', '5.5', 2),
        !           106:     (22, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)', 'Windows 2000', '1.4', 1),
        !           107:     (23, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FunWebProducts)', 'Windows XP', '6.0', 2),
        !           108:     (24, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040113', 'GNU/Linux', '1.6', 1),
        !           109:     (25, 'Opera/7.23 (Windows NT 5.1; U)  [en]', 'Windows XP', '7.23 (Windows NT 5.1; U)', 3),
        !           110:     (26, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113', 'Windows XP', '1.6', 1),
        !           111:     (27, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) Opera 7.20  [en]', 'Windows 95', '7.20', 3),
        !           112:     (28, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; YComp 5.0.0.0; Avalon Ltd.)', 'Windows 2000', '6.0', 2),
        !           113:     (29, 'Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/85.7 (KHTML, like Gecko) Safari/85.7', 'Mac PPC', '5.0 (Macintosh; U; PPC Mac OS X; en', 1),
        !           114:     (30, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Hotbar 4.4.2.0; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           115:     (31, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) Active Cache Request', 'Windows 2000', '5.5', 2),
        !           116:     (32, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)', 'Windows 95', '5.0', 2),
        !           117:     (33, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; {BEBB62E1-3900-4425-91F4-BC0C940212A1}; FunWebProducts; .NET CLR 1.1.4322; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           118:     (34, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           119:     (35, 'Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)', '', '', 8),
        !           120:     (36, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90)', 'Windows 95', '6.0', 2),
        !           121:     (37, 'Mozilla/4.0 (compatible; grub-client-1.0.5; Crawl your own stuff with http://grub.org)', 'uknown OS', '4.0', 5),
        !           122:     (38, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)', 'Windows NT', '5.0', 2),
        !           123:     (39, 'Mozilla/4.0 (compatible; grub-client-1.5.3; Crawl your own stuff with http://grub.org)', 'uknown OS', '4.0', 5),
        !           124:     (40, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; YComp 5.0.0.0; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           125:     (41, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AUTOSIGN W2000 WNT VER03; FunWebProducts-MyWay)', 'Windows XP', '6.0', 2),
        !           126:     (42, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; MyIE2; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           127:     (43, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0; iOpus-I-M)', 'Windows NT', '6.0', 2),
        !           128:     (44, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; DigExt)', 'Windows 2000', '6.0', 2),
        !           129:     (45, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.20  [en]', 'Windows XP', '7.20', 3),
        !           130:     (46, 'MSProxy/2.0', None, None, 6),
        !           131:     (47, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.6) Gecko/20040113', 'Windows 2000', '1.6', 1),
        !           132:     (48, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Q312461)', 'Windows 2000', '6.0', 2),
        !           133:     (49, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FunWebProducts-MyWay)', 'Windows XP', '6.0', 2),
        !           134:     (50, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.21  [en]', 'Windows XP', '7.21', 3),
        !           135:     (51, 'Mozilla/3.01 (compatible;)', None, None, 6),
        !           136:     (52, 'Lynx/2.8.4dev.16 libwww-FM/2.14 SSL-MM/1.4.1 OpenSSL/0.9.6', None, None, 6),
        !           137:     (53, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)', 'Windows 95', '5.5', 2),
        !           138:     (54, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; TUCOWS; MyIE2)', 'Windows XP', '6.0', 2),
        !           139:     (55, 'Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/124 (KHTML, like Gecko) Safari/125.1', 'Mac PPC', '5.0 (Macintosh; U; PPC Mac OS X; en', 1),
        !           140:     (56, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; H010818; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           141:     (57, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.5) Gecko/20031007 Firebird/0.7', 'Windows 2000', '1.5', 1),
        !           142:     (58, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Hotbar 4.4.0.0)', 'Windows XP', '6.0', 2),
        !           143:     (59, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; {1D013B5D-D0E7-4EAB-9FCF-AE4016583348})', 'Windows 2000', '6.0', 2),
        !           144:     (60, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7b;) Gecko/20020604 OLYMPIAKOS SFP', 'GNU/Linux', '1.7', 1),
        !           145:     (61, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Q312461; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           146:     (62, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           147:     (63, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; YComp 5.0.2.6)', 'Windows 2000', '6.0', 2),
        !           148:     (64, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 98)', 'Windows 95', '5.0', 2),
        !           149:     (65, 'Avant Browser (http://www.avantbrowser.com)', None, None, 6),
        !           150:     (66, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; {624D10FA-5EBC-4100-9316-C6769E251849}; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           151:     (67, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT)', 'Windows NT', '5.01', 2),
        !           152:     (68, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)', 'Windows XP', '1.4', 1),
        !           153:     (69, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; FunWebProducts-MyWay)', 'Windows 2000', '6.0', 2),
        !           154:     (70, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624 Netscape/7.1', 'GNU/Linux', '1.4', 1),
        !           155:     (71, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Q312461; .NET CLR 1.1.4322)', 'Windows 2000', '6.0', 2),
        !           156:     (72, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Opera 7.22  [en]', 'Windows 2000', '7.22', 3),
        !           157:     (73, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; T312461)', 'Windows 2000', '6.0', 2),
        !           158:     (74, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; EurobankSec)', 'Windows 2000', '6.0', 2),
        !           159:     (75, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)', 'Windows NT', '5.0', 2),
        !           160:     (76, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; NetCaptor 7.5.0 Gold; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows 2000', '6.0', 2),
        !           161:     (77, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0)', 'Windows NT', '6.0', 2),
        !           162:     (78, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Alexa Toolbar)', 'Windows XP', '6.0', 2),
        !           163:     (79, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7b) Gecko/20040316', 'Windows XP', '1.7', 1),
        !           164:     (80, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; i-NavFourF)', 'Windows XP', '6.0', 2),
        !           165:     (81, 'Scooter/3.3_SF', None, None, 6),
        !           166:     (82, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; {A2D2036B-F33C-4612-AB02-CDACAAA0DC39})', 'Windows XP', '6.0', 2),
        !           167:     (83, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; NetCaptor 7.5.0 Gold)', 'Windows XP', '6.0', 2),
        !           168:     (84, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)', 'Windows 2000', '5.5', 2),
        !           169:     (85, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ONEWAY NET; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           170:     (86, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           171:     (87, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; .NET CLR 1.1.4322)', 'Windows 2000', '5.01', 2),
        !           172:     (88, 'Opera/7.21 (Windows NT 5.1; U)  [en]', 'Windows XP', '7.21 (Windows NT 5.1; U)', 3),
        !           173:     (89, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; MyIE2)', 'Windows XP', '6.0', 2),
        !           174:     (90, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624', 'Windows 2000', '1.4', 1),
        !           175:     (91, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7a) Gecko/20040219', 'Windows XP', '1.7', 1),
        !           176:     (92, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.1.4322)', 'Windows NT', '6.0', 2),
        !           177:     (93, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Opera 7.21  [en]', 'Windows 2000', '7.21', 3),
        !           178:     (94, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AUTOSIGN W98 WNT VER03)', 'Windows XP', '6.0', 2),
        !           179:     (95, 'Mozilla/5.0 (Windows; U; Win 9x 4.90; en-US; rv:1.6) Gecko/20040206 Firefox/0.8', 'Windows ME', '1.6', 1),
        !           180:     (96, 'Opera/7.23 (Windows NT 5.0; U)  [en]', 'Windows 2000', '7.23 (Windows NT 5.0; U)', 3),
        !           181:     (97, 'Opera/7.23 (X11; FreeBSD i386; U)  [en]', 'uknown OS', '7.23 (X11; FreeBSD i386; U)', 3),
        !           182:     (98, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5) Gecko/20031007', 'Windows XP', '1.5', 1),
        !           183:     (99, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5) Gecko/20031007 Firebird/0.7', 'Windows XP', '1.5', 1),
        !           184:     (100, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.6) Gecko/20040206 Firefox/0.8', 'Windows 2000', '1.6', 1),
        !           185:     (101, 'Mozilla/4.0 (compatible; MSIE 5.16; Mac_PowerPC)', 'Mac PPC', '5.16', 2),
        !           186:     (102, 'Mozilla/4.0 (compatible; MSIE 6.0; Mac_PowerPC) Opera 7.50  [en]', 'uknown OS', '7.50', 3),
        !           187:     (103, 'Mediapartners-Google/2.1 (+http://www.googlebot.com/bot.html)', None, None, 6),
        !           188:     (104, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; MyIE2)', 'Windows 95', '5.0', 2),
        !           189:     (105, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; .NET CLR 1.1.4322)', 'Windows 95', '6.0', 2),
        !           190:     (106, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040207 Firefox/0.8', 'GNU/Linux', '1.6', 1),
        !           191:     (107, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; AUTOSIGN W98 WNT VER03)', 'Windows 95', '6.0', 2),
        !           192:     (108, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AUTOSIGN W2000 WNT VER03; Q312461)', 'Windows XP', '6.0', 2),
        !           193:     (109, 'Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC)', 'Mac PPC', '5.0', 2),
        !           194:     (110, 'Opera/7.20 (Windows NT 5.1; U)  [en]', 'Windows XP', '7.20 (Windows NT 5.1; U)', 3),
        !           195:     (111, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Avant Browser [avantbrowser.com])', 'Windows 2000', '6.0', 2),
        !           196:     (112, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; (R1 1.3); .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           197:     (113, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90; YComp 5.0.0.0)', 'Windows 95', '6.0', 2),
        !           198:     (114, 'Opera/7.23 (Windows 98; U)  [en]', 'Windows 95', '7.23 (Windows 98; U)', 3),
        !           199:     (115, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows 98; Feat Ext 18)', 'Windows 95', '5.01', 2),
        !           200:     (116, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AUTOSIGN W2000 WNT VER03)', 'Windows XP', '6.0', 2),
        !           201:     (117, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Q342532)', 'Windows XP', '6.0', 2),
        !           202:     (118, 'Mozilla/5.0 Galeon/1.2.12 (X11; Linux i686; U;) Gecko/20031004', 'GNU/Linux', '5.0 Galeon/1.2.12 (X11; Linux i686; U;', 9),
        !           203:     (119, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) via Avirt Gateway Server v4.2', 'Windows XP', '6.0', 2),
        !           204:     (120, 'Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:0.9.4) Gecko/20011206 Netscape6/6.2.1', 'Sun OS', '0.9.4', 1),
        !           205:     (121, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.23  [en]', 'Windows XP', '7.23', 3),
        !           206:     (122, 'Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02', 'Windows 95', '1.0.2', 1),
        !           207:     (123, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; BCD2000)', 'Windows XP', '6.0', 2),
        !           208:     (124, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Alexa Toolbar)', 'Windows XP', '6.0', 2),
        !           209:     (125, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.10  [en]', 'Windows XP', '7.10', 3),
        !           210:     (126, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FunWebProducts; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           211:     (127, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           212:     (128, 'Mozilla/5.0 (Windows; U; Win 9x 4.90; en-US; rv:1.4) Gecko/20030624', 'Windows ME', '1.4', 1),
        !           213:     (129, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.11  [en]', 'Windows XP', '7.11', 3),
        !           214:     (130, 'Mozilla/4.0 (compatible; grub-client-1.4.3; Crawl your own stuff with http://grub.org)', 'uknown OS', '4.0', 5),
        !           215:     (131, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; el-GR; rv:1.5) Gecko/20031007', 'Windows XP', '1.5', 1),
        !           216:     (132, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Opera 7.23  [en]', 'Windows 2000', '7.23', 3),
        !           217:     (133, 'Mozilla/4.0 (compatible; MSIE 5.13; Mac_PowerPC)', 'Mac PPC', '5.13', 2),
        !           218:     (134, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0; .NET CLR 1.0.3705)', 'Windows NT', '6.0', 2),
        !           219:     (135, 'Mozilla/4.0 (compatible;)', 'uknown OS', '4.0', 5),
        !           220:     (136, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Hotbar 4.4.2.0)', 'Windows XP', '6.0', 2),
        !           221:     (137, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Hotbar 4.1.7.0)', 'Windows 2000', '6.0', 2),
        !           222:     (138, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; TUCOWS; .NET CLR 1.1.4322)', 'Windows 2000', '6.0', 2),
        !           223:     (139, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; ESB{9404F370-72A9-465A-94D5-C275AE965397})', 'Windows 2000', '5.01', 2),
        !           224:     (140, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; MyIE2; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           225:     (141, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.5) Gecko/20031007', 'Windows 2000', '1.5', 1),
        !           226:     (142, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90; .NET CLR 1.1.4322)', 'Windows 95', '6.0', 2),
        !           227:     (143, 'Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Opera 7.01  [en]', 'Windows XP', '7.01', 3),
        !           228:     (144, 'Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)', 'Windows 95', '4.01', 2),
        !           229:     (145, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; ESB{F65AACA0-5C7B-11D8-B676-00C02628848A})', 'Windows 95', '6.0', 2),
        !           230:     (146, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; IE@netCD)', 'Windows 2000', '6.0', 2),
        !           231:     (147, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; Compulink Network)', 'Windows 2000', '5.5', 2),
        !           232:     (148, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Alexa Toolbar)', 'Windows 95', '6.0', 2),
        !           233:     (149, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0; T312461; .NET CLR 1.0.3705)', 'Windows NT', '6.0', 2),
        !           234:     (150, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT; Aztec)', 'Windows NT', '5.01', 2),
        !           235:     (151, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; CivilTech)', 'Windows 95', '6.0', 2),
        !           236:     (152, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; de-DE; rv:1.6) Gecko/20040206 Firefox/0.8', 'Windows 2000', '1.6', 1),
        !           237:     (153, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; iOpus-I-M)', 'Windows XP', '6.0', 2),
        !           238:     (154, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; TUCOWS)', 'Windows 95', '6.0', 2),
        !           239:     (155, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Hewlett-Packard; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           240:     (156, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; TUCOWS; FunWebProducts; .NET CLR 1.1.4322)', 'Windows 95', '6.0', 2),
        !           241:     (157, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; MyIE2; .NET CLR 1.1.4322; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           242:     (158, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FunWebProducts; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           243:     (159, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; MyIE2)', 'Windows 2000', '6.0', 2),
        !           244:     (160, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; ONEWAY NET)', 'Windows 2000', '6.0', 2),
        !           245:     (161, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; {FF087BE5-1083-4DE5-8F21-637B924CB76E})', 'Windows XP', '6.0', 2),
        !           246:     (162, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; AUTOSIGN W2000 WNT VER03)', 'Windows 2000', '6.0', 2),
        !           247:     (163, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030529', 'Windows 2000', '1.4', 1),
        !           248:     (164, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4a) Gecko/20030401', 'Windows 2000', '1.4', 1),
        !           249:     (165, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; T312461; (R1 1.3))', 'Windows 2000', '6.0', 2),
        !           250:     (166, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; brip1)', 'Windows 2000', '6.0', 2),
        !           251:     (167, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; SEARCHALOT)', 'Windows 2000', '6.0', 2),
        !           252:     (168, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Feat Ext 18)', 'Windows XP', '6.0', 2),
        !           253:     (169, 'Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.5) Gecko/20031007', 'Windows 95', '1.5', 1),
        !           254:     (170, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7b) Gecko/20040316', 'Windows 2000', '1.7', 1),
        !           255:     (171, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; FunWebProducts)', 'Windows 2000', '6.0', 2),
        !           256:     (172, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Alexa Toolbar; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           257:     (173, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Hotbar 4.3.1.0; FunWebProducts)', 'Windows XP', '6.0', 2),
        !           258:     (174, 'Mozilla/5.0 (X11; U; Linux i686; el-gr; rv:1.4) Gecko/20030630', 'GNU/Linux', '1.4', 1),
        !           259:     (175, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; brip1)', 'Windows XP', '6.0', 2),
        !           260:     (176, 'SurveyBot/2.3 (Whois Source)', None, None, 6),
        !           261:     (177, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) Opera 7.23  [en]', 'Windows 95', '7.23', 3),
        !           262:     (178, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; IE 6.05; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           263:     (179, 'Mozilla/4.0 (compatible; MSIE 5.15; Mac_PowerPC)', 'Mac PPC', '5.15', 2),
        !           264:     (180, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0', 'Windows XP', '1.0.1', 1),
        !           265:     (181, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01', 'Windows XP', '1.0.2', 1),
        !           266:     (182, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0; Hotbar 4.4.0.0)', 'Windows NT', '5.5', 2),
        !           267:     (183, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt; FunWebProducts)', 'Windows 95', '5.0', 2),
        !           268:     (184, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; {95A9C2FB-E969-47DB-A5F8-4F7D70528FF7})', 'Windows XP', '6.0', 2),
        !           269:     (185, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; T312461; Q312461)', 'Windows 95', '6.0', 2),
        !           270:     (186, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; DigExt; AUTOSIGN W2000 WNT VER03)', 'Windows 2000', '6.0', 2),
        !           271:     (187, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; DigExt)', 'Windows XP', '6.0', 2),
        !           272:     (188, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4b) Gecko/20030516 Mozilla Firebird/0.6', 'Windows XP', '1.4', 1),
        !           273:     (189, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; DigExt; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           274:     (190, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AIRF)', 'Windows XP', '6.0', 2),
        !           275:     (191, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.9) Gecko/20020408', 'GNU/Linux', '0.9.9', 1),
        !           276:     (192, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; Feat Ext 18)', 'Windows 2000', '5.01', 2),
        !           277:     (193, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113 MultiZilla/1.6.3.0d', 'Windows XP', '1.6', 1),
        !           278:     (194, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Crazy Browser 1.0.5; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           279:     (195, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt; Hotbar 4.3.5.0; FunWebProducts)', 'Windows 95', '5.0', 2),
        !           280:     (196, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; ACN; MyIE2; .NET CLR 1.1.4322)', 'Windows NT', '6.0', 2),
        !           281:     (197, 'Mozilla/5.0 (compatible; Konqueror/3.2; Linux) (KHTML, like Gecko)', ' Linux', '3.2', 4),
        !           282:     (198, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows ME) Opera 7.50  [en]', 'uknown OS', '7.50', 3),
        !           283:     (199, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ESB{C9D3416E-AF99-432D-BB0F-629589DD2A96})', 'Windows XP', '6.0', 2),
        !           284:     (200, 'Opera/7.11 (Windows NT 5.1; U)  [en]', 'Windows XP', '7.11 (Windows NT 5.1; U)', 3),
        !           285:     (201, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; (R1 1.5); .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           286:     (202, 'Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.6) Gecko/20040206 Firefox/0.8', 'Windows NT', '1.6', 1),
        !           287:     (203, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Feat Ext 13)', 'Windows XP', '6.0', 2),
        !           288:     (204, 'CURIValidate', None, None, 6),
        !           289:     (205, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.3) Gecko/20030312', 'Windows XP', '1.3', 1),
        !           290:     (206, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040309', 'GNU/Linux', '1.6', 1),
        !           291:     (207, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; winweb; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           292:     (208, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AUTOSIGN W2000 WNT VER03; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           293:     (209, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows 98; Feat Ext 15)', 'Windows 95', '5.01', 2),
        !           294:     (210, 'Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/124 (KHTML, like Gecko) Safari/125', 'Mac PPC', '5.0 (Macintosh; U; PPC Mac OS X; en', 1),
        !           295:     (211, 'Mozilla/4.0 compatible ZyBorg/1.0 (wn.zyborg@looksmart.net; http://www.WISEnutbot.com)', 'uknown OS', '4.0 compatible ZyBorg/1.0', 5),
        !           296:     (212, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; YComp 5.0.2.6)', 'Windows XP', '6.0', 2),
        !           297:     (213, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AUTOSIGN W2000 WNT VER03; .NET CLR 1.1.4322; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           298:     (214, 'Opera/7.20 (Windows NT 5.0; U)  [en]', 'Windows 2000', '7.20 (Windows NT 5.0; U)', 3),
        !           299:     (215, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Alexa Toolbar)', 'Windows 2000', '6.0', 2),
        !           300:     (216, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.23  [el]', 'Windows XP', '7.23', 3),
        !           301:     (217, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90; Smart Explorer 6.1)', 'Windows 95', '6.0', 2),
        !           302:     (218, 'Mozilla/4.0 (compatible; Netcraft Web Server Survey)', 'uknown OS', '4.0', 5),
        !           303:     (219, 'Mozilla/5.0 (compatible; Konqueror/3.1-rc4; i686 Linux; 20020516)', ' i686 Linux; 20020516', '3.1', 4),
        !           304:     (220, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; UKC VERSION)', 'Windows 2000', '6.0', 2),
        !           305:     (221, 'Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows XP) Opera 7.0  [en]', 'uknown OS', '7.0', 3),
        !           306:     (222, 'Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.6) Gecko/20040206 Firefox/0.8', 'Windows 95', '1.6', 1),
        !           307:     (223, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; SEARCHALOT 11022003)', 'Windows 95', '6.0', 2),
        !           308:     (224, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90; FunWebProducts; iOpus-I-M; .NET CLR 1.0.3705)', 'Windows 95', '5.5', 2),
        !           309:     (225, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.2914)', 'Windows 2000', '6.0', 2),
        !           310:     (226, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 1.0.2914)', 'Windows XP', '6.0', 2),
        !           311:     (227, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT))', 'Windows XP', '6.0', 2),
        !           312:     (228, 'Googlebot-Image/1.0 (+http://www.googlebot.com/bot.html)', '', '1.0', 7),
        !           313:     (229, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.2.1) Gecko/20021130', 'Windows XP', '1.2.1', 1),
        !           314:     (230, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7b) Gecko/20040314', 'Windows XP', '1.7', 1),
        !           315:     (231, 'Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.5) Gecko/20031007 Firebird/0.7', 'Windows 95', '1.5', 1),
        !           316:     (232, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624', 'Windows XP', '1.4', 1),
        !           317:     (233, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; iOpus-I-M; CLINK)', 'Windows XP', '6.0', 2),
        !           318:     (234, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7b) Gecko/20040316', 'GNU/Linux', '1.7', 1),
        !           319:     (235, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90; Alexa Toolbar)', 'Windows 95', '5.5', 2),
        !           320:     (236, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows 95', '6.0', 2),
        !           321:     (237, 'Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0', 'Windows NT', '1.0.1', 1),
        !           322:     (238, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007 Firebird/0.7', 'GNU/Linux', '1.5', 1),
        !           323:     (239, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; .NET CLR 1.0.3705)', 'Windows 2000', '5.5', 2),
        !           324:     (240, 'Mozilla/5.0 (Windows; U; WinNT; en; rv:1.0.2) Gecko/20030311 Beonex/0.8.2-stable', 'Windows NT', '1.0.2', 1),
        !           325:     (241, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; {5D5A1B12-0F6C-4483-A2FF-B03498A4570F})', 'Windows XP', '6.0', 2),
        !           326:     (242, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90; Q312461; AT&T CSM6.0; sbcydsl 3.12; YComp 5.0.0.0; .NET CLR 1.0.3705)', 'Windows 95', '6.0', 2),
        !           327:     (243, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AUTOSIGN W2000 WNT VER03; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           328:     (244, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; MyIE2; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           329:     (245, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows XP) Opera 6.05  [el]', 'uknown OS', '6.05', 3),
        !           330:     (246, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ESB{C46FA41C-A455-4506-A8C0-4B25AFA4C704}; FunWebProducts)', 'Windows XP', '6.0', 2),
        !           331:     (247, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; DVD Owner; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           332:     (248, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Q312461; MyIE2)', 'Windows XP', '6.0', 2),
        !           333:     (249, 'Mozilla/5.0 (compatible; Konqueror/3.1; Linux)', ' Linux', '3.1', 4),
        !           334:     (250, 'Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)', 'Windows 95', '1.4', 1),
        !           335:     (251, 'Baiduspider+(+http://www.baidu.com/search/spider.htm)', None, None, 6),
        !           336:     (252, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 95; DigExt)', 'Windows 95', '5.0', 2),
        !           337:     (253, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20030225', 'GNU/Linux', '1.2.1', 1),
        !           338:     (254, 'Mozilla/4.0 (compatible; MSIE 6.0; X11; Linux i686) Opera 7.23  [en]', 'GNU/Linux', '7.23', 3),
        !           339:     (255, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; TUCOWS)', 'Windows 2000', '6.0', 2),
        !           340:     (256, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5a) Gecko/20030728 Mozilla Firebird/0.6.1', 'Windows XP', '1.5', 1),
        !           341:     (257, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; LRF; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           342:     (258, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90; (R1 1.3); .NET CLR 1.1.4322)', 'Windows 95', '6.0', 2),
        !           343:     (259, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705; Alexa Toolbar; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           344:     (260, 'Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.0; NetCaptor 7.5.0 Gold; .NET CLR 1.1.4322)', 'Windows 2000', '6.0', 2),
        !           345:     (261, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Tucows; YComp 5.0.0.0)', 'Windows 95', '6.0', 2),
        !           346:     (262, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Q312461; .NET CLR 1.0.3705; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           347:     (263, 'Mozilla/5.0 (Windows; U; Windows NT 5.0; el-GR; rv:1.6) Gecko/20040113', 'Windows 2000', '1.6', 1),
        !           348:     (264, 'UptimeBot(www.uptimebot.com)', None, None, 6),
        !           349:     (265, 'Xenu Link Sleuth 1.2e', None, None, 6),
        !           350:     (266, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ESB{1BAAA30F-BDC9-4E83-AF38-660B1E484271})', 'Windows XP', '6.0', 2),
        !           351:     (267, 'Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)', 'Mac PPC', '4.01', 2),
        !           352:     (268, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; T312461)', 'Windows 2000', '5.5', 2),
        !           353:     (269, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.50  [en]', 'Windows XP', '7.50', 3),
        !           354:     (270, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; H010818; UB1.4_IE6.0_SP1; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           355:     (271, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SALT 1.0.4223.1 0111 Developer; .NET CLR 1.1.4322; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           356:     (272, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.2) Gecko/20030716', 'GNU/Linux', '1.0.2', 1),
        !           357:     (273, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4b) Gecko/20030507', 'GNU/Linux', '1.4', 1),
        !           358:     (274, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; FunWebProducts)', 'Windows 95', '6.0', 2),
        !           359:     (275, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; YComp 5.0.0.0)', 'Windows 2000', '6.0', 2),
        !           360:     (276, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; winweb)', 'Windows 95', '6.0', 2),
        !           361:     (277, 'Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows 98) Opera 7.02  [en]', 'Windows 95', '7.02', 3),
        !           362:     (278, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; NetCaptor 7.2.0; .NET CLR 1.0.3705)', 'Windows XP', '6.0', 2),
        !           363:     (279, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Installed by Symantec Package)', 'Windows 95', '5.5', 2),
        !           364:     (280, 'Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.6) Gecko/20040206 Firefox/0.8', 'Windows NT', '1.6', 1),
        !           365:     (281, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; NetCaptor 7.2.2)', 'Windows XP', '6.0', 2),
        !           366:     (282, 'Mozilla/4.0 (compatible; MS FrontPage 6.0)', 'uknown OS', '4.0', 5),
        !           367:     (283, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; StumbleUpon.com 1.760)', 'Windows XP', '6.0', 2),
        !           368:     (284, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.22  [en]', 'Windows XP', '7.22', 3),
        !           369:     (285, 'Mozilla/4.0 (compatible; MSIE 5.0; Windows XP) Opera 6.05  [en]', 'uknown OS', '6.05', 3),
        !           370:     (286, 'Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Opera 7.0  [en]', 'Windows XP', '7.0', 3),
        !           371:     (287, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows ME) Opera 7.23  [en]', 'uknown OS', '7.23', 3),
        !           372:     (288, 'Java1.3.0', None, None, 6),
        !           373:     (289, 'Mozilla/5.0 (Windows; U; Windows NT 5.2; fr-FR; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)', 'Windows NT', '1.4', 1),
        !           374:     (290, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Argentina.com v12b8.1; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           375:     (291, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AT&T CSM6.0)', 'Windows XP', '6.0', 2),
        !           376:     (292, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; FunWebProducts; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           377:     (293, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; MSN 9.0; MSNbVZ02; MSNmen-us; MSNcOTH)', 'Windows XP', '6.0', 2),
        !           378:     (294, 'Mozilla/5.0 (Windows; U; Win 9x 4.90; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)', 'Windows ME', '1.4', 1),
        !           379:     (295, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FunWebProducts-MyWay; .NET CLR 1.1.4322)', 'Windows XP', '6.0', 2),
        !           380:     (296, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Creative)', 'Windows 95', '5.5', 2),
        !           381:     (297, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Avant Browser [avantbrowser.com])', 'Windows 95', '6.0', 2),
        !           382:     (298, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; AskBar 3.00; Hotbar 4.4.2.0)', 'Windows 2000', '6.0', 2),
        !           383:     (299, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Opera 7.11  [en]', 'Windows 2000', '7.11', 3),
        !           384:     (300, 'Mozilla/5.0 (Windows NT 5.1; U) Opera 7.23  [en]', 'Windows XP', '7.23', 3),
        !           385:     (301, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Mozilla/4.0 (Compatible; MSIE 6.0; Windows 2000; MCK); Mozilla/4.0 (Compatible; MSIE 6.0; Win; MCK))', 'Windows 2000', '6.0', 2),
        !           386:     (302, 'Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.4.1) Gecko/20031114', 'GNU/Linux', '1.4.1', 1),
        !           387:     (303, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818; UB1800; .NET CLR 1.0.3705)', 'Windows 2000', '5.5', 2),
        !           388:     (304, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; (R1 1.3))', 'Windows XP', '6.0', 2),
        !           389:     (305, 'Mozilla/6.20  (BEOS; U ;Nav)', None, None, 6),
        !           390:     (306, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; TUCOWS.COM)', 'Windows 95', '6.0', 2),
        !           391:     (307, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; .NET CLR 1.0.3705)', 'Windows 95', '6.0', 2),
        !           392:     (308, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; T312461; YComp 5.0.0.0; .NET CLR 1.0.3705)', 'Windows 2000', '6.0', 2),
        !           393:     (309, 'Mozilla/4.0 (compatible; MSIE 5.5; Windows 95; FunWebProducts)', 'Windows 95', '5.5', 2),
        !           394:     (310, 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040122 Debian/1.6-1', 'GNU/Linux', '1.6', 1),
        !           395:     (311, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; www.ASPSimply.com)', 'Windows 2000', '6.0', 2),
        !           396:     (312, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; ESB{59E9535D-AE57-4D68-A91A-F568540A69C8})', 'Windows 2000', '6.0', 2),
        !           397:     (313, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02', 'Windows XP', '1.0.2', 1),
        !           398:     )
        !           399: 
        !           400: def createTest(sig, isSupported, index, os, browser, version):
        !           401:     def test(self):
        !           402:         actual = self.script(sig)
        !           403:         self.assertEquals(isSupported, actual)
        !           404:     testname = 'test_%d %s %s %s' % (index, os, BROWSERNAMES[browser],
        !           405:                                      '.'.join([str(v) for v in version]))
        !           406:     setattr(TestBrowserSupportsKupu, testname.strip(), test)
        !           407: 
        !           408: def createTests():
        !           409:     for id, sig, os, version, browser in BROWSERS:
        !           410:         if version:
        !           411:             version = version.split()[0]
        !           412:             version = tuple([int(v) for v in version.split('.')])
        !           413:         else:
        !           414:             version = ()
        !           415:         minver = SUPPORTED.get(browser, None)
        !           416:         supported = minver != None and version >= minver
        !           417: 
        !           418:         # Specifically exclude support for some browsers
        !           419:         #XXX Hack
        !           420:         if 'Safari' in sig:
        !           421:             supported = False
        !           422: 
        !           423:         createTest(sig, supported, id, os, browser, version)
        !           424: 
        !           425: createTests()
        !           426: 
        !           427: from unittest import TestSuite, makeSuite
        !           428: def test_suite():
        !           429:     suite = TestSuite()
        !           430:     suite.addTest(makeSuite(TestBrowserSupportsKupu))
        !           431:     return suite
        !           432: 
        !           433: if __name__ == '__main__':
        !           434:     framework()

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>