cv-user-agent 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Rakefile CHANGED
@@ -1,7 +1,4 @@
1
- $:.unshift 'lib'
2
- require 'user-agent'
3
- require 'rubygems'
4
- require 'rake'
1
+ require "bundler/gem_tasks"
5
2
 
6
3
  Dir['tasks/**/*.rake'].sort.each { |f| load f }
7
4
 
@@ -22,4 +22,12 @@
22
22
  #++
23
23
 
24
24
  require 'user-agent/agent'
25
- require 'user-agent/version'
25
+ require 'user-agent/version'
26
+
27
+ module UserAgent
28
+
29
+ def self.parse string
30
+ ParsedUserAgent.new string
31
+ end
32
+
33
+ end
@@ -1,6 +1,6 @@
1
1
  module UserAgent
2
2
 
3
- class Agent
3
+ class ParsedUserAgent
4
4
 
5
5
  attr_reader :string
6
6
 
@@ -9,27 +9,27 @@ module UserAgent
9
9
  end
10
10
 
11
11
  def name
12
- Agent.name_for_user_agent string
12
+ ParsedUserAgent.name_for_user_agent string
13
13
  end
14
14
 
15
15
  def version
16
- Agent.version_for_user_agent string
16
+ ParsedUserAgent.version_for_user_agent string
17
17
  end
18
18
 
19
19
  def engine
20
- Agent.engine_for_user_agent string
20
+ ParsedUserAgent.engine_for_user_agent string
21
21
  end
22
22
 
23
23
  def engine_version
24
- Agent.engine_version_for_user_agent string
24
+ ParsedUserAgent.engine_version_for_user_agent string
25
25
  end
26
26
 
27
27
  def os
28
- Agent.os_for_user_agent string
28
+ ParsedUserAgent.os_for_user_agent string
29
29
  end
30
30
 
31
31
  def platform
32
- Agent.platform_for_user_agent string
32
+ ParsedUserAgent.platform_for_user_agent string
33
33
  end
34
34
 
35
35
  def to_s
@@ -37,7 +37,7 @@ module UserAgent
37
37
  end
38
38
 
39
39
  def inspect
40
- "#<Agent:#{name} version:#{version.inspect} engine:\"#{engine.to_s}:#{engine_version}\" os:#{os.to_s.inspect}>"
40
+ "#<ParsedUserAgent:#{name} version:#{version.inspect} engine:\"#{engine.to_s}:#{engine_version}\" os:#{os.to_s.inspect}>"
41
41
  end
42
42
 
43
43
  def == other
@@ -1,3 +1,3 @@
1
1
  module UserAgent
2
- VERSION = '1.0.3'
2
+ VERSION = '1.1.0'
3
3
  end
@@ -1,14 +1,14 @@
1
1
 
2
2
  require File.dirname(__FILE__) + '/spec_helper'
3
3
 
4
- describe UserAgent::Agent do
4
+ describe UserAgent::ParsedUserAgent do
5
5
  before :each do
6
- @agent = UserAgent::Agent.new 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit/528.4+ (KHTML, like Gecko) Version/4.0dp1 Safari/526.11.2'
6
+ @agent = UserAgent::ParsedUserAgent.new 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit/528.4+ (KHTML, like Gecko) Version/4.0dp1 Safari/526.11.2'
7
7
  end
8
8
 
9
9
  describe "#initialize" do
10
10
  it "should allow a user agent string to be passed" do
11
- UserAgent::Agent.new('foo').string.should == 'foo'
11
+ UserAgent::ParsedUserAgent.new('foo').string.should == 'foo'
12
12
  end
13
13
  end
14
14
 
@@ -38,7 +38,7 @@ describe UserAgent::Agent do
38
38
 
39
39
  describe "#inspect" do
40
40
  it "should return string presenting the engine, os, version, etc" do
41
- @agent.inspect.should == '#<Agent:Safari version:"4.0dp1" engine:"webkit:528.4" os:"OS X 10.5">'
41
+ @agent.inspect.should == '#<ParsedUserAgent:Safari version:"4.0dp1" engine:"webkit:528.4" os:"OS X 10.5">'
42
42
  end
43
43
  end
44
44
 
@@ -50,14 +50,14 @@ describe UserAgent::Agent do
50
50
 
51
51
  describe "#==" do
52
52
  it "should be equal when the user agent strings are the same" do
53
- a = UserAgent::Agent.new 'foo'
54
- b = UserAgent::Agent.new 'foo'
53
+ a = UserAgent::ParsedUserAgent.new 'foo'
54
+ b = UserAgent::ParsedUserAgent.new 'foo'
55
55
  a.should == b
56
56
  end
57
57
 
58
58
  it "should not be equal when user agent strings are different" do
59
- a = UserAgent::Agent.new 'foo'
60
- b = UserAgent::Agent.new 'bar'
59
+ a = UserAgent::ParsedUserAgent.new 'foo'
60
+ b = UserAgent::ParsedUserAgent.new 'bar'
61
61
  a.should_not == b
62
62
  end
63
63
  end
@@ -2,7 +2,7 @@ require File.dirname(__FILE__) + '/spec_helper'
2
2
 
3
3
  def test name, version, platform, os, engine, engine_version, string
4
4
  it "should parse #{name} #{version} on #{os} with engine #{engine} #{engine_version}" do
5
- agent = UserAgent::Agent.new string
5
+ agent = UserAgent.parse string
6
6
  agent.name.should == name
7
7
  agent.os.should == os
8
8
  agent.platform.should == platform
@@ -12,7 +12,7 @@ def test name, version, platform, os, engine, engine_version, string
12
12
  end
13
13
  end
14
14
 
15
- describe UserAgent::Agent do
15
+ describe UserAgent do
16
16
 
17
17
  test :Safari, '4.0dp1', :Windows, :'Windows XP', :webkit, '526.9', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en) AppleWebKit/526.9 (KHTML, like Gecko) Version/4.0dp1 Safari/526.8'
18
18
  test :Safari, '4.0.3', :Windows, :'Windows Vista', :webkit, '531.9', 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-us) AppleWebKit/531.9 (KHTML, like Gecko) Version/4.0.3 Safari/531.9'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cv-user-agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-10-25 00:00:00.000000000Z
12
+ date: 2011-10-26 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
- requirement: &70208198832040 !ruby/object:Gem::Requirement
16
+ requirement: &70326637567240 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70208198832040
24
+ version_requirements: *70326637567240
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rspec
27
- requirement: &70208198831620 !ruby/object:Gem::Requirement
27
+ requirement: &70326637566820 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,7 +32,7 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70208198831620
35
+ version_requirements: *70326637566820
36
36
  description: user-agent is a user agent parser support most of the commonly used browsers
37
37
  today.
38
38
  email: cvillela@thoughtworks.com