iGEL-ua_parser 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,493 @@
1
+ $:.unshift File.join(File.dirname(__FILE__),'..','lib')
2
+
3
+ require 'test/unit'
4
+ require 'ua_parser'
5
+
6
+ class GeckoTest < Test::Unit::TestCase
7
+ include UaParser
8
+
9
+ def test_bon_echo_2_0_a3_win_xp
10
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1a3) Gecko/20060526 BonEcho/2.0a3"
11
+ assert ua.known?
12
+ assert ua.browser?
13
+ assert !ua.bot?
14
+ assert !ua.feed_reader?
15
+ assert !ua.other?
16
+ assert_equal :gecko, ua.render_engine
17
+ assert_equal "1.8.1a3", ua.render_engine_version.full
18
+ assert_equal "1.8", ua.render_engine_version.major
19
+ assert_equal :bonecho, ua.name
20
+ assert_equal "2.0a3", ua.version.full
21
+ assert_equal "2.0a", ua.version.major
22
+ assert_equal [], ua.emails
23
+ assert_equal nil, ua.email
24
+ assert_equal [], ua.urls
25
+ assert_equal nil, ua.url
26
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
27
+ assert_raise NotImplementedError do
28
+ ua.method(method).call
29
+ end
30
+ end
31
+ end
32
+
33
+ def test_bon_echo_2_0_0_4_linux_x86_64
34
+ ua = UserAgent.new "Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.8.1.4) Gecko/20080721 BonEcho/2.0.0.4"
35
+ assert ua.known?
36
+ assert ua.browser?
37
+ assert !ua.bot?
38
+ assert !ua.feed_reader?
39
+ assert !ua.other?
40
+ assert_equal :gecko, ua.render_engine
41
+ assert_equal "1.8.1.4", ua.render_engine_version.full
42
+ assert_equal :bonecho, ua.name
43
+ assert_equal "2.0.0.4", ua.version.full
44
+ assert_equal "2.0", ua.version.major
45
+ assert_equal [], ua.emails
46
+ assert_equal nil, ua.email
47
+ assert_equal [], ua.urls
48
+ assert_equal nil, ua.url
49
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
50
+ assert_raise NotImplementedError do
51
+ ua.method(method).call
52
+ end
53
+ end
54
+ end
55
+
56
+ def test_camino_155_mac_ppc
57
+ ua = UserAgent.new "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en; rv:1.8.1.12) Gecko/20080206 Camino/1.5.5"
58
+ assert ua.known?
59
+ assert ua.browser?
60
+ assert !ua.bot?
61
+ assert !ua.feed_reader?
62
+ assert !ua.other?
63
+ assert_equal :gecko, ua.render_engine
64
+ assert_equal "1.8.1.12", ua.render_engine_version.full
65
+ assert_equal "1.8", ua.render_engine_version.major
66
+ assert_equal :camino, ua.name
67
+ assert_equal "1.5.5", ua.version.full
68
+ assert_equal "1.5", ua.version.major
69
+ assert_equal [], ua.emails
70
+ assert_equal nil, ua.email
71
+ assert_equal [], ua.urls
72
+ assert_equal nil, ua.url
73
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
74
+ assert_raise NotImplementedError do
75
+ ua.method(method).call
76
+ end
77
+ end
78
+ end
79
+
80
+ def test_firefox_2006_linux_swiftfox
81
+ ua = UserAgent.new "Mozilla/5.0 (X11; U; Linux i686; es-AR; rv:1.8.1.6) Gecko/20070803 Firefox/2.0.0.6 (Swiftfox)"
82
+ assert ua.known?
83
+ assert ua.browser?
84
+ assert !ua.bot?
85
+ assert !ua.feed_reader?
86
+ assert !ua.other?
87
+ assert_equal :gecko, ua.render_engine
88
+ assert_equal "1.8.1.6", ua.render_engine_version.full
89
+ assert_equal :firefox, ua.name
90
+ assert_equal "2.0.0.6", ua.version.full
91
+ assert_equal "2.0", ua.version.major
92
+ assert_equal [], ua.emails
93
+ assert_equal nil, ua.email
94
+ assert_equal [], ua.urls
95
+ assert_equal nil, ua.url
96
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
97
+ assert_raise NotImplementedError do
98
+ ua.method(method).call
99
+ end
100
+ end
101
+ end
102
+
103
+ def test_firefox_302_mac_intel
104
+ ua = UserAgent.new "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5.7; it; rv:1.9) Gecko/20080920 Firefox/3.0.2"
105
+ assert ua.known?
106
+ assert ua.browser?
107
+ assert !ua.bot?
108
+ assert !ua.feed_reader?
109
+ assert !ua.other?
110
+ assert_equal :gecko, ua.render_engine
111
+ assert_equal "1.9", ua.render_engine_version.full
112
+ assert_equal :firefox, ua.name
113
+ assert_equal "3.0.2", ua.version.full
114
+ assert_equal "3.0", ua.version.major
115
+ assert_equal [], ua.emails
116
+ assert_equal nil, ua.email
117
+ assert_equal [], ua.urls
118
+ assert_equal nil, ua.url
119
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
120
+ assert_raise NotImplementedError do
121
+ ua.method(method).call
122
+ end
123
+ end
124
+ end
125
+
126
+ def test_firefox_305_mac_ppc
127
+ ua = UserAgent.new "Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.4; fr; rv:1.9.0.5) Gecko/2008120121 Firefox/3.0.5"
128
+ assert ua.known?
129
+ assert ua.browser?
130
+ assert !ua.bot?
131
+ assert !ua.feed_reader?
132
+ assert !ua.other?
133
+ assert_equal :gecko, ua.render_engine
134
+ assert_equal "1.9.0.5", ua.render_engine_version.full
135
+ assert_equal :firefox, ua.name
136
+ assert_equal "3.0.5", ua.version.full
137
+ assert_equal "3.0", ua.version.major
138
+ assert_equal [], ua.emails
139
+ assert_equal nil, ua.email
140
+ assert_equal [], ua.urls
141
+ assert_equal nil, ua.url
142
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
143
+ assert_raise NotImplementedError do
144
+ ua.method(method).call
145
+ end
146
+ end
147
+ end
148
+
149
+ def test_firefox_305_gentoo
150
+ ua = UserAgent.new "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.5) Gecko/2008122406 Gentoo Firefox/3.0.5"
151
+ assert ua.known?
152
+ assert ua.browser?
153
+ assert !ua.bot?
154
+ assert !ua.feed_reader?
155
+ assert !ua.other?
156
+ assert_equal :gecko, ua.render_engine
157
+ assert_equal "1.9.0.5", ua.render_engine_version.full
158
+ assert_equal :firefox, ua.name
159
+ assert_equal "3.0.5", ua.version.full
160
+ assert_equal "3.0", ua.version.major
161
+ assert_equal [], ua.emails
162
+ assert_equal nil, ua.email
163
+ assert_equal [], ua.urls
164
+ assert_equal nil, ua.url
165
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
166
+ assert_raise NotImplementedError do
167
+ ua.method(method).call
168
+ end
169
+ end
170
+ end
171
+
172
+ def test_firefox_305_ubuntu
173
+ ua = UserAgent.new "Mozilla/5.0 (X11; U; Linux i686; sk; rv:1.9.0.5) Gecko/2008121621 Ubuntu/8.04 (hardy) Firefox/3.0.5"
174
+ assert ua.known?
175
+ assert ua.browser?
176
+ assert !ua.bot?
177
+ assert !ua.feed_reader?
178
+ assert !ua.other?
179
+ assert_equal :gecko, ua.render_engine
180
+ assert_equal "1.9.0.5", ua.render_engine_version.full
181
+ assert_equal :firefox, ua.name
182
+ assert_equal "3.0.5", ua.version.full
183
+ assert_equal "3.0", ua.version.major
184
+ assert_equal [], ua.emails
185
+ assert_equal nil, ua.email
186
+ assert_equal [], ua.urls
187
+ assert_equal nil, ua.url
188
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
189
+ assert_raise NotImplementedError do
190
+ ua.method(method).call
191
+ end
192
+ end
193
+ end
194
+
195
+ def test_firefox_305_win_vista
196
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5"
197
+ assert ua.known?
198
+ assert ua.browser?
199
+ assert !ua.bot?
200
+ assert !ua.feed_reader?
201
+ assert !ua.other?
202
+ assert_equal :gecko, ua.render_engine
203
+ assert_equal "1.9.0.5", ua.render_engine_version.full
204
+ assert_equal :firefox, ua.name
205
+ assert_equal "3.0.5", ua.version.full
206
+ assert_equal "3.0", ua.version.major
207
+ assert_equal [], ua.emails
208
+ assert_equal nil, ua.email
209
+ assert_equal [], ua.urls
210
+ assert_equal nil, ua.url
211
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
212
+ assert_raise NotImplementedError do
213
+ ua.method(method).call
214
+ end
215
+ end
216
+ end
217
+
218
+ def test_flock_126_win_xp
219
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.17) Gecko/20080915 Firefox/2.0.0.17 Flock/1.2.6"
220
+ assert ua.known?
221
+ assert ua.browser?
222
+ assert !ua.bot?
223
+ assert !ua.feed_reader?
224
+ assert !ua.other?
225
+ assert_equal :gecko, ua.render_engine
226
+ assert_equal "1.8.1.17", ua.render_engine_version.full
227
+ assert_equal :flock, ua.name
228
+ assert_equal "1.2.6", ua.version.full
229
+ assert_equal "1.2", ua.version.major
230
+ assert_equal [], ua.emails
231
+ assert_equal nil, ua.email
232
+ assert_equal [], ua.urls
233
+ assert_equal nil, ua.url
234
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
235
+ assert_raise NotImplementedError do
236
+ ua.method(method).call
237
+ end
238
+ end
239
+ end
240
+
241
+ def test_flock_202_win_vista
242
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.4) Gecko/2008112016 Firefox/3.0.4 Flock/2.0.2"
243
+ assert ua.known?
244
+ assert ua.browser?
245
+ assert !ua.bot?
246
+ assert !ua.feed_reader?
247
+ assert !ua.other?
248
+ assert_equal :gecko, ua.render_engine
249
+ assert_equal "1.9.0.4", ua.render_engine_version.full
250
+ assert_equal :flock, ua.name
251
+ assert_equal "2.0.2", ua.version.full
252
+ assert_equal "2.0", ua.version.major
253
+ assert_equal [], ua.emails
254
+ assert_equal nil, ua.email
255
+ assert_equal [], ua.urls
256
+ assert_equal nil, ua.url
257
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
258
+ assert_raise NotImplementedError do
259
+ ua.method(method).call
260
+ end
261
+ end
262
+ end
263
+
264
+ def test_gran_paradiso_30a7_win_xp
265
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a7) Gecko/2007080210 GranParadiso/3.0a7"
266
+ assert ua.known?
267
+ assert ua.browser?
268
+ assert !ua.bot?
269
+ assert !ua.feed_reader?
270
+ assert !ua.other?
271
+ assert_equal :gecko, ua.render_engine
272
+ assert_equal "1.9a7", ua.render_engine_version.full
273
+ assert_equal :granparadiso, ua.name
274
+ assert_equal "3.0a7", ua.version.full
275
+ assert_equal "3.0a", ua.version.major
276
+ assert_equal [], ua.emails
277
+ assert_equal nil, ua.email
278
+ assert_equal [], ua.urls
279
+ assert_equal nil, ua.url
280
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
281
+ assert_raise NotImplementedError do
282
+ ua.method(method).call
283
+ end
284
+ end
285
+ end
286
+
287
+ def test_k_meleon_win2k
288
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 5.0; de-DE; rv:1.8.1.8) Gecko/20071013 K-Meleon/1.5"
289
+ assert ua.known?
290
+ assert ua.browser?
291
+ assert !ua.bot?
292
+ assert !ua.feed_reader?
293
+ assert !ua.other?
294
+ assert_equal :gecko, ua.render_engine
295
+ assert_equal "1.8.1.8", ua.render_engine_version.full
296
+ assert_equal :"k-meleon", ua.name
297
+ assert_equal "1.5", ua.version.full
298
+ assert_equal "1.5", ua.version.major
299
+ assert_equal [], ua.emails
300
+ assert_equal nil, ua.email
301
+ assert_equal [], ua.urls
302
+ assert_equal nil, ua.url
303
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
304
+ assert_raise NotImplementedError do
305
+ ua.method(method).call
306
+ end
307
+ end
308
+ end
309
+
310
+ def test_k_meleon_win2k
311
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 5.0; de-DE; rv:1.8.1.8) Gecko/20071013 K-Meleon/1.5"
312
+ assert ua.known?
313
+ assert ua.browser?
314
+ assert !ua.bot?
315
+ assert !ua.feed_reader?
316
+ assert !ua.other?
317
+ assert_equal :gecko, ua.render_engine
318
+ assert_equal "1.8.1.8", ua.render_engine_version.full
319
+ assert_equal :"k-meleon", ua.name
320
+ assert_equal "1.5", ua.version.full
321
+ assert_equal "1.5", ua.version.major
322
+ assert_equal [], ua.emails
323
+ assert_equal nil, ua.email
324
+ assert_equal [], ua.urls
325
+ assert_equal nil, ua.url
326
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
327
+ assert_raise NotImplementedError do
328
+ ua.method(method).call
329
+ end
330
+ end
331
+ end
332
+
333
+ def test_minefield_31b2pre_win_vista
334
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b2pre) Gecko/20081011 Minefield/3.1b2pre"
335
+ assert ua.known?
336
+ assert ua.browser?
337
+ assert !ua.bot?
338
+ assert !ua.feed_reader?
339
+ assert !ua.other?
340
+ assert_equal :gecko, ua.render_engine
341
+ assert_equal "1.9.1b2pre", ua.render_engine_version.full
342
+ assert_equal :minefield, ua.name
343
+ assert_equal "3.1b2pre", ua.version.full
344
+ assert_equal "3.1b", ua.version.major
345
+ assert_equal [], ua.emails
346
+ assert_equal nil, ua.email
347
+ assert_equal [], ua.urls
348
+ assert_equal nil, ua.url
349
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
350
+ assert_raise NotImplementedError do
351
+ ua.method(method).call
352
+ end
353
+ end
354
+ end
355
+
356
+ def test_navigator_win98
357
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.8.1.8pre) Gecko/20071019 Firefox/2.0.0.8 Navigator/9.0.0.1"
358
+ assert ua.known?
359
+ assert ua.browser?
360
+ assert !ua.bot?
361
+ assert !ua.feed_reader?
362
+ assert !ua.other?
363
+ assert_equal :gecko, ua.render_engine
364
+ assert_equal "1.8.1.8pre", ua.render_engine_version.full
365
+ assert_equal :navigator, ua.name
366
+ assert_equal "9.0.0.1", ua.version.full
367
+ assert_equal "9", ua.version.major
368
+ assert_equal [], ua.emails
369
+ assert_equal nil, ua.email
370
+ assert_equal [], ua.urls
371
+ assert_equal nil, ua.url
372
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
373
+ assert_raise NotImplementedError do
374
+ ua.method(method).call
375
+ end
376
+ end
377
+ end
378
+
379
+ def test_netscape_61_mac_ppc
380
+ ua = UserAgent.new "Mozilla/5.0 (Macintosh; U; PPC; de-DE; rv:0.9.2) Gecko/20010726 Netscape6/6.1"
381
+ assert ua.known?
382
+ assert ua.browser?
383
+ assert !ua.bot?
384
+ assert !ua.feed_reader?
385
+ assert !ua.other?
386
+ assert_equal :gecko, ua.render_engine
387
+ assert_equal "0.9.2", ua.render_engine_version.full
388
+ assert_equal :netscape, ua.name
389
+ assert_equal "6.1", ua.version.full
390
+ assert_equal "6.1", ua.version.major
391
+ assert_equal [], ua.emails
392
+ assert_equal nil, ua.email
393
+ assert_equal [], ua.urls
394
+ assert_equal nil, ua.url
395
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
396
+ assert_raise NotImplementedError do
397
+ ua.method(method).call
398
+ end
399
+ end
400
+ end
401
+
402
+ def test_netscape_702_mac_ppc
403
+ ua = UserAgent.new "Mozilla/5.0 (Macintosh; U; PPC; de-DE; rv:1.0.2) Gecko/20030208 Netscape/7.02"
404
+ assert ua.known?
405
+ assert ua.browser?
406
+ assert !ua.bot?
407
+ assert !ua.feed_reader?
408
+ assert !ua.other?
409
+ assert_equal :gecko, ua.render_engine
410
+ assert_equal "1.0.2", ua.render_engine_version.full
411
+ assert_equal :netscape, ua.name
412
+ assert_equal "7.02", ua.version.full
413
+ assert_equal "7.0", ua.version.major
414
+ assert_equal [], ua.emails
415
+ assert_equal nil, ua.email
416
+ assert_equal [], ua.urls
417
+ assert_equal nil, ua.url
418
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
419
+ assert_raise NotImplementedError do
420
+ ua.method(method).call
421
+ end
422
+ end
423
+ end
424
+
425
+ def test_netscape_81_win98
426
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.7.5) Gecko/20060127 Netscape/8.1"
427
+ assert ua.known?
428
+ assert ua.browser?
429
+ assert !ua.bot?
430
+ assert !ua.feed_reader?
431
+ assert !ua.other?
432
+ assert_equal :gecko, ua.render_engine
433
+ assert_equal "1.7.5", ua.render_engine_version.full
434
+ assert_equal :netscape, ua.name
435
+ assert_equal "8.1", ua.version.full
436
+ assert_equal "8.1", ua.version.major
437
+ assert_equal [], ua.emails
438
+ assert_equal nil, ua.email
439
+ assert_equal [], ua.urls
440
+ assert_equal nil, ua.url
441
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
442
+ assert_raise NotImplementedError do
443
+ ua.method(method).call
444
+ end
445
+ end
446
+ end
447
+
448
+ def test_seamonkey_119_mac_intel
449
+ ua = UserAgent.new "Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.13) Gecko/20080313 SeaMonkey/1.1.9"
450
+ assert ua.known?
451
+ assert ua.browser?
452
+ assert !ua.bot?
453
+ assert !ua.feed_reader?
454
+ assert !ua.other?
455
+ assert_equal :gecko, ua.render_engine
456
+ assert_equal "1.8.1.13", ua.render_engine_version.full
457
+ assert_equal :seamonkey, ua.name
458
+ assert_equal "1.1.9", ua.version.full
459
+ assert_equal "1.1", ua.version.major
460
+ assert_equal [], ua.emails
461
+ assert_equal nil, ua.email
462
+ assert_equal [], ua.urls
463
+ assert_equal nil, ua.url
464
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
465
+ assert_raise NotImplementedError do
466
+ ua.method(method).call
467
+ end
468
+ end
469
+ end
470
+
471
+ def test_seamonkey_20a3pre_win_2k
472
+ ua = UserAgent.new "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9.2a1pre) Gecko/20081228 SeaMonkey/2.0a3pre"
473
+ assert ua.known?
474
+ assert ua.browser?
475
+ assert !ua.bot?
476
+ assert !ua.feed_reader?
477
+ assert !ua.other?
478
+ assert_equal :gecko, ua.render_engine
479
+ assert_equal "1.9.2a1pre", ua.render_engine_version.full
480
+ assert_equal :seamonkey, ua.name
481
+ assert_equal "2.0a3pre", ua.version.full
482
+ assert_equal "2.0a", ua.version.major
483
+ assert_equal [], ua.emails
484
+ assert_equal nil, ua.email
485
+ assert_equal [], ua.urls
486
+ assert_equal nil, ua.url
487
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
488
+ assert_raise NotImplementedError do
489
+ ua.method(method).call
490
+ end
491
+ end
492
+ end
493
+ end
@@ -0,0 +1,146 @@
1
+ $:.unshift File.join(File.dirname(__FILE__),'..','lib')
2
+
3
+ require 'test/unit'
4
+ require 'ua_parser'
5
+
6
+ class OtherTest < Test::Unit::TestCase
7
+ include UaParser
8
+
9
+ def test_apache
10
+ ua = UserAgent.new "Apache/2.2.8 (Ubuntu) DAV/2 SVN/1.4.6 mod_python/3.3.1 Python/2.5.2 PHP/5.2.4-2ubuntu5.3 with Suhosin-Patch mod_ssl/2.2.8 OpenSSL/0.9.8g (internal dummy connection)"
11
+ assert ua.known?
12
+ assert !ua.browser?
13
+ assert !ua.bot?
14
+ assert !ua.feed_reader?
15
+ assert ua.other?
16
+ assert_equal nil, ua.render_engine
17
+ assert_equal nil, ua.render_engine_version
18
+ assert_equal :apache_httpd, ua.name
19
+ assert_equal "2.2.8", ua.version.full
20
+ assert_equal "2.2", ua.version.major
21
+ assert_equal [], ua.emails
22
+ assert_equal nil, ua.email
23
+ assert_equal [], ua.urls
24
+ assert_equal nil, ua.url
25
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
26
+ assert_raise NotImplementedError do
27
+ ua.method(method).call
28
+ end
29
+ end
30
+ end
31
+
32
+ def test_jakarta_commons_httpclient_3_1
33
+ ua = UserAgent.new "Jakarta Commons-HttpClient/3.1"
34
+ assert ua.known?
35
+ assert !ua.browser?
36
+ assert !ua.bot?
37
+ assert !ua.feed_reader?
38
+ assert ua.other?
39
+ assert_equal nil, ua.render_engine
40
+ assert_equal nil, ua.render_engine_version
41
+ assert_equal :jakarta_commons_httpclient, ua.name
42
+ assert_equal "3.1", ua.version.full
43
+ assert_equal "3.1", ua.version.major
44
+ assert_equal [], ua.emails
45
+ assert_equal nil, ua.email
46
+ assert_equal [], ua.urls
47
+ assert_equal nil, ua.url
48
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
49
+ assert_raise NotImplementedError do
50
+ ua.method(method).call
51
+ end
52
+ end
53
+ end
54
+
55
+ def test_java_1_6_0_03
56
+ ua = UserAgent.new "Java/1.6.0_03"
57
+ assert ua.known?
58
+ assert !ua.browser?
59
+ assert !ua.bot?
60
+ assert !ua.feed_reader?
61
+ assert ua.other?
62
+ assert_equal nil, ua.render_engine
63
+ assert_equal nil, ua.render_engine_version
64
+ assert_equal :java, ua.name
65
+ assert_equal "1.6.0_03", ua.version.full
66
+ assert_equal "1.6", ua.version.major
67
+ assert_equal [], ua.emails
68
+ assert_equal nil, ua.email
69
+ assert_equal [], ua.urls
70
+ assert_equal nil, ua.url
71
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
72
+ assert_raise NotImplementedError do
73
+ ua.method(method).call
74
+ end
75
+ end
76
+ end
77
+
78
+ def test_libwww_perl_5_805
79
+ ua = UserAgent.new "libwww-perl/5.805"
80
+ assert ua.known?
81
+ assert !ua.browser?
82
+ assert !ua.bot?
83
+ assert !ua.feed_reader?
84
+ assert ua.other?
85
+ assert_equal nil, ua.render_engine
86
+ assert_equal nil, ua.render_engine_version
87
+ assert_equal :"libwww-perl", ua.name
88
+ assert_equal "5.805", ua.version.full
89
+ assert_equal "5.805", ua.version.major
90
+ assert_equal [], ua.emails
91
+ assert_equal nil, ua.email
92
+ assert_equal [], ua.urls
93
+ assert_equal nil, ua.url
94
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
95
+ assert_raise NotImplementedError do
96
+ ua.method(method).call
97
+ end
98
+ end
99
+ end
100
+
101
+ def test_svn_151
102
+ ua = UserAgent.new "SVN/1.5.1 (r32289) neon/0.28.2"
103
+ assert ua.known?
104
+ assert !ua.browser?
105
+ assert !ua.bot?
106
+ assert !ua.feed_reader?
107
+ assert ua.other?
108
+ assert_equal nil, ua.render_engine
109
+ assert_equal nil, ua.render_engine_version
110
+ assert_equal :svn_client, ua.name
111
+ assert_equal "1.5.1", ua.version.full
112
+ assert_equal "1.5", ua.version.major
113
+ assert_equal [], ua.emails
114
+ assert_equal nil, ua.email
115
+ assert_equal [], ua.urls
116
+ assert_equal nil, ua.url
117
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
118
+ assert_raise NotImplementedError do
119
+ ua.method(method).call
120
+ end
121
+ end
122
+ end
123
+
124
+ def test_tortoise_svn_152
125
+ ua = UserAgent.new "SVN/1.5.2 (r32768)/TortoiseSVN-1.5.3.13783 neon/0.28.3"
126
+ assert ua.known?
127
+ assert !ua.browser?
128
+ assert !ua.bot?
129
+ assert !ua.feed_reader?
130
+ assert ua.other?
131
+ assert_equal nil, ua.render_engine
132
+ assert_equal nil, ua.render_engine_version
133
+ assert_equal :tortoisesvn, ua.name
134
+ assert_equal "1.5.3.13783", ua.version.full
135
+ assert_equal "1.5", ua.version.major
136
+ assert_equal [], ua.emails
137
+ assert_equal nil, ua.email
138
+ assert_equal [], ua.urls
139
+ assert_equal nil, ua.url
140
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
141
+ assert_raise NotImplementedError do
142
+ ua.method(method).call
143
+ end
144
+ end
145
+ end
146
+ end