iGEL-ua_parser 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/Manifest ADDED
@@ -0,0 +1,15 @@
1
+ Manifest
2
+ README.rdoc
3
+ Rakefile
4
+ test/trident_test.rb
5
+ test/webkit_test.rb
6
+ test/gecko_test.rb
7
+ test/other_test.rb
8
+ test/version_test.rb
9
+ test/crawler_test.rb
10
+ test/presto_test.rb
11
+ apache_log_tester.rb
12
+ ua_parser.gemspec
13
+ lib/ua_parser/version.rb
14
+ lib/ua_parser/user_agent.rb
15
+ lib/ua_parser.rb
data/Rakefile CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
  require 'rake'
3
3
  require 'echoe'
4
4
 
5
- Echoe.new('ua_parser', '0.0.1') do |p|
5
+ Echoe.new('ua_parser', '0.0.2') do |p|
6
6
  p.description = "Parses the user agent of browsers and bots."
7
7
  p.url = "http://github.com/iGEL/ua_parser"
8
8
  p.author = "Johannes Barre"
@@ -5,6 +5,7 @@ module UaParser
5
5
  # == Parameters
6
6
  # * ua_string: The user agent as you got it
7
7
  def initialize(ua_string)
8
+ ua_string = "" unless ua_string.is_a?(String)
8
9
  @ua_string = ua_string.strip.downcase
9
10
  @known = false
10
11
  @type = :browser
data/test/other_test.rb CHANGED
@@ -5,7 +5,7 @@ require 'ua_parser'
5
5
 
6
6
  class OtherTest < Test::Unit::TestCase
7
7
  include UaParser
8
-
8
+
9
9
  def test_apache
10
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
11
  assert ua.known?
@@ -98,6 +98,28 @@ class OtherTest < Test::Unit::TestCase
98
98
  end
99
99
  end
100
100
 
101
+ def test_nil
102
+ ua = UserAgent.new nil
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 :no_agent_given, ua.name
111
+ assert_equal nil, ua.version
112
+ assert_equal [], ua.emails
113
+ assert_equal nil, ua.email
114
+ assert_equal [], ua.urls
115
+ assert_equal nil, ua.url
116
+ [:architecture, :dotnet_versions, :os, :os_type, :os_version, :ui_lang, :ui_lang_country, :vendor].each do |method|
117
+ assert_raise NotImplementedError do
118
+ ua.method(method).call
119
+ end
120
+ end
121
+ end
122
+
101
123
  def test_svn_151
102
124
  ua = UserAgent.new "SVN/1.5.1 (r32289) neon/0.28.2"
103
125
  assert ua.known?
data/ua_parser.gemspec CHANGED
@@ -2,27 +2,27 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{ua_parser}
5
- s.version = "0.0.1"
5
+ s.version = "0.0.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Johannes Barre"]
9
- s.date = %q{2009-01-29}
9
+ s.date = %q{2009-05-04}
10
10
  s.description = %q{Parses the user agent of browsers and bots.}
11
11
  s.email = %q{igel@igels.net}
12
12
  s.extra_rdoc_files = ["README.rdoc", "lib/ua_parser/version.rb", "lib/ua_parser/user_agent.rb", "lib/ua_parser.rb"]
13
- s.files = ["Manifest", "README.rdoc", "Rakefile", "test/trident_test.rb", "test/webkit_test.rb", "test/gecko_test.rb", "test/other_test.rb", "test/version_test.rb", "test/crawler_test.rb", "test/presto_test.rb", "apache_log_tester.rb", "lib/ua_parser/version.rb", "lib/ua_parser/user_agent.rb", "lib/ua_parser.rb", "ua_parser.gemspec"]
13
+ s.files = ["Manifest", "README.rdoc", "Rakefile", "test/trident_test.rb", "test/webkit_test.rb", "test/gecko_test.rb", "test/other_test.rb", "test/version_test.rb", "test/crawler_test.rb", "test/presto_test.rb", "apache_log_tester.rb", "ua_parser.gemspec", "lib/ua_parser/version.rb", "lib/ua_parser/user_agent.rb", "lib/ua_parser.rb"]
14
14
  s.has_rdoc = true
15
15
  s.homepage = %q{http://github.com/iGEL/ua_parser}
16
16
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Ua_parser", "--main", "README.rdoc"]
17
17
  s.require_paths = ["lib"]
18
18
  s.rubyforge_project = %q{ua_parser}
19
- s.rubygems_version = %q{1.3.1}
19
+ s.rubygems_version = %q{1.3.2}
20
20
  s.summary = %q{Parses the user agent of browsers and bots.}
21
21
  s.test_files = ["test/trident_test.rb", "test/webkit_test.rb", "test/gecko_test.rb", "test/other_test.rb", "test/version_test.rb", "test/crawler_test.rb", "test/presto_test.rb"]
22
22
 
23
23
  if s.respond_to? :specification_version then
24
24
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
25
- s.specification_version = 2
25
+ s.specification_version = 3
26
26
 
27
27
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
28
28
  else
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iGEL-ua_parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johannes Barre
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-01-29 00:00:00 -08:00
12
+ date: 2009-05-04 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -36,10 +36,10 @@ files:
36
36
  - test/crawler_test.rb
37
37
  - test/presto_test.rb
38
38
  - apache_log_tester.rb
39
+ - ua_parser.gemspec
39
40
  - lib/ua_parser/version.rb
40
41
  - lib/ua_parser/user_agent.rb
41
42
  - lib/ua_parser.rb
42
- - ua_parser.gemspec
43
43
  has_rdoc: true
44
44
  homepage: http://github.com/iGEL/ua_parser
45
45
  post_install_message:
@@ -69,7 +69,7 @@ requirements: []
69
69
  rubyforge_project: ua_parser
70
70
  rubygems_version: 1.2.0
71
71
  signing_key:
72
- specification_version: 2
72
+ specification_version: 3
73
73
  summary: Parses the user agent of browsers and bots.
74
74
  test_files:
75
75
  - test/trident_test.rb