rack-useragent 0.0.3 → 0.0.5

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 53c9c08debf3f40ee338963965d3cdc0024b2280
4
+ data.tar.gz: cdf76823cb783b2d18d3ba552dd200d8a6b0a647
5
+ SHA512:
6
+ metadata.gz: 0132e53e2a36a4bc825a3263ab07fbc69dc2b31b183fdffe1d764507a29bb062afe62f07ec604a47bd01208bbf9ef9c32943ff09c24342488e4eb18fe91627ab
7
+ data.tar.gz: 993924e80750492a328d514e9864e02e2c44d8c6e980c8d1cab5791503eff44047cebb10837f5f429adb94697ffaa66c01a22d69e3f09ed08582c66a90d15aad
data/.travis.yml ADDED
@@ -0,0 +1,6 @@
1
+ rvm:
2
+ - 2.1.5
3
+ - 2.0.0
4
+ - 1.8.7
5
+ - 1.9.3
6
+ - ree
data/Gemfile CHANGED
@@ -1,3 +1,3 @@
1
- source "http://rubygems.org"
1
+ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,24 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ rack-useragent (0.0.5)
5
+ bundler (>= 1.3)
6
+ rack (>= 0.9.1)
7
+ useragent (>= 0.4.16)
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ mocha (0.9.8)
13
+ rake
14
+ rack (1.6.0)
15
+ rake (10.3.2)
16
+ useragent (0.10.0)
17
+
18
+ PLATFORMS
19
+ ruby
20
+
21
+ DEPENDENCIES
22
+ mocha (= 0.9.8)
23
+ rack-useragent!
24
+ rake
data/README.rdoc CHANGED
@@ -50,9 +50,10 @@ Enjoy it!
50
50
 
51
51
  * Sergio Gil <sgilperez@gmail.com>
52
52
  * Luismi Cavallé <luismi@lmcavalle.com>
53
+ * Paco Guzmán <pacoguzmanp@gmail.com>
53
54
 
54
55
  == Contributors
55
56
 
56
57
  We're looking forward for your patches. Fork us!
57
58
 
58
- Copyright (c) 2008 BeBanjo, released under the MIT license
59
+ Copyright (c) 2008-2015 BeBanjo, released under the MIT license
data/Rakefile CHANGED
@@ -1,10 +1,10 @@
1
- require 'bundler'
2
- Bundler::GemHelper.install_tasks
1
+ require 'rake'
2
+ require 'rake/testtask'
3
+ require "bundler/gem_tasks"
3
4
 
4
5
  desc 'Default: run unit tests.'
5
6
  task :default => :test
6
7
 
7
- require 'rake/testtask'
8
8
  desc 'Run all tests'
9
9
  Rake::TestTask.new(:test) do |t|
10
10
  t.libs << 'lib'
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.0.5
@@ -23,7 +23,7 @@ module Rack::UserAgent
23
23
  private
24
24
 
25
25
  def unsupported?(browser)
26
- browser && @browsers.any? { |hash| browser < OpenStruct.new(hash) }
26
+ browser && !browser.version.nil? && @browsers.any? { |hash| browser < OpenStruct.new(hash) }
27
27
  end
28
28
 
29
29
  def page(locale, browser)
@@ -43,4 +43,4 @@ module Rack::UserAgent
43
43
  candidates.compact.detect{ |template| File.exists?(template) }
44
44
  end
45
45
  end
46
- end
46
+ end
@@ -1,23 +1,24 @@
1
1
  # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "rack/user_agent/version"
4
2
 
5
3
  Gem::Specification.new do |s|
6
- s.name = "rack-useragent"
7
- s.version = Rack::UserAgent::VERSION
8
- s.platform = Gem::Platform::RUBY
9
- s.authors = ["Sergio Gil", "Luismi Cavallé"]
10
- s.email = ["team@bebanjo.com"]
11
- s.homepage = "http://github.com/bebanjo/rack-useragent"
12
- s.summary = %q{Rack Middleware for filtering by user agent}
4
+ s.name = %q{rack-useragent}
5
+ s.version = "0.0.5"
13
6
 
14
- s.files = `git ls-files`.split("\n")
15
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
7
+ s.authors = ["Sergio Gil", "Luismi Cavall\303\251", "Paco Guzmán"]
8
+ s.date = %q{2009-09-16}
9
+ s.email = %q{ballsbreaking@bebanjo.com}
10
+ s.homepage = %q{http://github.com/bebanjo/rack-useragent}
11
+ s.summary = %q{Rack Middleware for filtering by user agent}
12
+ s.license = "MIT"
13
+ s.files = `git ls-files`.split($/)
14
+ s.executables = []
15
+ s.test_files = s.files.grep(%r{^(test|spec|features)/})
17
16
  s.require_paths = ["lib"]
18
-
19
- s.add_dependency 'rack', '>= 0.9.1'
20
- s.add_dependency 'useragent'
21
-
22
- s.add_development_dependency 'mocha'
23
- end
17
+
18
+ s.add_development_dependency 'rake'
19
+ s.add_development_dependency 'mocha', '0.9.8'
20
+
21
+ s.add_dependency 'bundler', '>= 1.3'
22
+ s.add_dependency 'rack', '>= 0.9.1'
23
+ s.add_dependency 'useragent', '>= 0.4.16'
24
+ end
@@ -1,5 +1,4 @@
1
1
  require 'test/unit'
2
- require 'rubygems'
3
2
  require 'mocha'
4
3
 
5
4
  require File.dirname(__FILE__) + '/../lib/rack/user_agent'
@@ -46,6 +45,23 @@ class UserAgentFilterTest < Test::Unit::TestCase
46
45
  assert_equal 400, response[STATUS]
47
46
  assert response[BODY].include?("Sorry, your browser is not supported. Please upgrade")
48
47
  end
48
+
49
+ def test_user_agent_supported_when_not_provide_version
50
+ ["Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.34 (KHTML, like Gecko) Qt/4.8.4 Safari/534.34",
51
+ "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/534.57.7 (KHTML, like Gecko)",
52
+ "Mozilla/5.0 (Unknown; Linux x86_64) AppleWebKit/534.34 (KHTML, like Gecko) PhantomJS/1.9.7 Safari/534.34",
53
+ "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) QuickLook/5.0",
54
+ "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.77.4 (KHTML, like Gecko) QuickLook/5.0"].each do |user_agent|
55
+ assert_equal UserAgent.parse(user_agent).version, nil
56
+
57
+ filter = Rack::UserAgent::Filter.new(@app, [{:browser => "Safari", :version => "3.0"},
58
+ {:browser => "Internet Explorer", :version => "7.0"}])
59
+ env = {"HTTP_USER_AGENT" => user_agent}
60
+ @app.expects(:call).with(env).returns(@app_response)
61
+ response = filter.call(env)
62
+ assert_equal @app_response, response
63
+ end
64
+ end
49
65
 
50
66
  def test_user_agent_not_unsupported
51
67
  filter = Rack::UserAgent::Filter.new(@app, [{:browser => "Internet Explorer", :version => "7.0"}])
@@ -78,4 +94,4 @@ class UserAgentFilterTest < Test::Unit::TestCase
78
94
  assert_equal "Hello, Internet Explorer 6.0!", response[BODY]
79
95
  end
80
96
 
81
- end
97
+ end
metadata CHANGED
@@ -1,125 +1,131 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rack-useragent
3
- version: !ruby/object:Gem::Version
4
- hash: 25
5
- prerelease:
6
- segments:
7
- - 0
8
- - 0
9
- - 3
10
- version: 0.0.3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.5
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Sergio Gil
14
- - "Luismi Cavall\xC3\xA9"
8
+ - Luismi Cavallé
9
+ - Paco Guzmán
15
10
  autorequire:
16
11
  bindir: bin
17
12
  cert_chain: []
18
-
19
- date: 2011-04-08 00:00:00 +02:00
20
- default_executable:
21
- dependencies:
22
- - !ruby/object:Gem::Dependency
23
- name: rack
13
+ date: 2009-09-16 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: rake
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - ">="
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ version: '0'
29
+ - !ruby/object:Gem::Dependency
30
+ name: mocha
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - '='
34
+ - !ruby/object:Gem::Version
35
+ version: 0.9.8
36
+ type: :development
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - '='
41
+ - !ruby/object:Gem::Version
42
+ version: 0.9.8
43
+ - !ruby/object:Gem::Dependency
44
+ name: bundler
45
+ requirement: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '1.3'
50
+ type: :runtime
24
51
  prerelease: false
25
- requirement: &id001 !ruby/object:Gem::Requirement
26
- none: false
27
- requirements:
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: '1.3'
57
+ - !ruby/object:Gem::Dependency
58
+ name: rack
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
28
61
  - - ">="
29
- - !ruby/object:Gem::Version
30
- hash: 57
31
- segments:
32
- - 0
33
- - 9
34
- - 1
62
+ - !ruby/object:Gem::Version
35
63
  version: 0.9.1
36
64
  type: :runtime
37
- version_requirements: *id001
38
- - !ruby/object:Gem::Dependency
39
- name: useragent
40
65
  prerelease: false
41
- requirement: &id002 !ruby/object:Gem::Requirement
42
- none: false
43
- requirements:
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
44
68
  - - ">="
45
- - !ruby/object:Gem::Version
46
- hash: 3
47
- segments:
48
- - 0
49
- version: "0"
69
+ - !ruby/object:Gem::Version
70
+ version: 0.9.1
71
+ - !ruby/object:Gem::Dependency
72
+ name: useragent
73
+ requirement: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ version: 0.4.16
50
78
  type: :runtime
51
- version_requirements: *id002
52
- - !ruby/object:Gem::Dependency
53
- name: mocha
54
79
  prerelease: false
55
- requirement: &id003 !ruby/object:Gem::Requirement
56
- none: false
57
- requirements:
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
58
82
  - - ">="
59
- - !ruby/object:Gem::Version
60
- hash: 3
61
- segments:
62
- - 0
63
- version: "0"
64
- type: :development
65
- version_requirements: *id003
83
+ - !ruby/object:Gem::Version
84
+ version: 0.4.16
66
85
  description:
67
- email:
68
- - team@bebanjo.com
86
+ email: ballsbreaking@bebanjo.com
69
87
  executables: []
70
-
71
88
  extensions: []
72
-
73
89
  extra_rdoc_files: []
74
-
75
- files:
76
- - .gitignore
90
+ files:
91
+ - ".travis.yml"
77
92
  - Gemfile
93
+ - Gemfile.lock
78
94
  - README.rdoc
79
95
  - Rakefile
96
+ - VERSION
80
97
  - lib/rack/user_agent.rb
81
98
  - lib/rack/user_agent/filter.rb
82
- - lib/rack/user_agent/version.rb
83
99
  - rack-useragent.gemspec
84
100
  - test/public/upgrade.es.html
85
101
  - test/public/upgrade.html
86
102
  - test/upgrade.erb
87
103
  - test/user_agent_filter_test.rb
88
- has_rdoc: true
89
104
  homepage: http://github.com/bebanjo/rack-useragent
90
- licenses: []
91
-
105
+ licenses:
106
+ - MIT
107
+ metadata: {}
92
108
  post_install_message:
93
109
  rdoc_options: []
94
-
95
- require_paths:
110
+ require_paths:
96
111
  - lib
97
- required_ruby_version: !ruby/object:Gem::Requirement
98
- none: false
99
- requirements:
112
+ required_ruby_version: !ruby/object:Gem::Requirement
113
+ requirements:
100
114
  - - ">="
101
- - !ruby/object:Gem::Version
102
- hash: 3
103
- segments:
104
- - 0
105
- version: "0"
106
- required_rubygems_version: !ruby/object:Gem::Requirement
107
- none: false
108
- requirements:
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ required_rubygems_version: !ruby/object:Gem::Requirement
118
+ requirements:
109
119
  - - ">="
110
- - !ruby/object:Gem::Version
111
- hash: 3
112
- segments:
113
- - 0
114
- version: "0"
120
+ - !ruby/object:Gem::Version
121
+ version: '0'
115
122
  requirements: []
116
-
117
123
  rubyforge_project:
118
- rubygems_version: 1.6.2
124
+ rubygems_version: 2.2.2
119
125
  signing_key:
120
- specification_version: 3
126
+ specification_version: 4
121
127
  summary: Rack Middleware for filtering by user agent
122
- test_files:
128
+ test_files:
123
129
  - test/public/upgrade.es.html
124
130
  - test/public/upgrade.html
125
131
  - test/upgrade.erb
data/.gitignore DELETED
@@ -1,4 +0,0 @@
1
- *.gem
2
- .bundle
3
- Gemfile.lock
4
- pkg/*
@@ -1,5 +0,0 @@
1
- module Rack
2
- module UserAgent
3
- VERSION = "0.0.3"
4
- end
5
- end