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 +7 -0
- data/.travis.yml +6 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +24 -0
- data/README.rdoc +2 -1
- data/Rakefile +3 -3
- data/VERSION +1 -0
- data/lib/rack/user_agent/filter.rb +2 -2
- data/rack-useragent.gemspec +19 -18
- data/test/user_agent_filter_test.rb +18 -2
- metadata +89 -83
- data/.gitignore +0 -4
- data/lib/rack/user_agent/version.rb +0 -5
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
data/Gemfile
CHANGED
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 '
|
|
2
|
-
|
|
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
|
-
|
|
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
|
data/rack-useragent.gemspec
CHANGED
|
@@ -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
|
|
7
|
-
s.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.
|
|
15
|
-
s.
|
|
16
|
-
s.
|
|
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.
|
|
20
|
-
s.
|
|
21
|
-
|
|
22
|
-
s.
|
|
23
|
-
|
|
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
|
-
|
|
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
|
-
-
|
|
8
|
+
- Luismi Cavallé
|
|
9
|
+
- Paco Guzmán
|
|
15
10
|
autorequire:
|
|
16
11
|
bindir: bin
|
|
17
12
|
cert_chain: []
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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
|
-
|
|
26
|
-
|
|
27
|
-
|
|
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
|
-
|
|
42
|
-
|
|
43
|
-
requirements:
|
|
66
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
67
|
+
requirements:
|
|
44
68
|
- - ">="
|
|
45
|
-
- !ruby/object:Gem::Version
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
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
|
-
|
|
56
|
-
|
|
57
|
-
requirements:
|
|
80
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
81
|
+
requirements:
|
|
58
82
|
- - ">="
|
|
59
|
-
- !ruby/object:Gem::Version
|
|
60
|
-
|
|
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
|
-
|
|
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
|
-
|
|
99
|
-
requirements:
|
|
112
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
113
|
+
requirements:
|
|
100
114
|
- - ">="
|
|
101
|
-
- !ruby/object:Gem::Version
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
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
|
-
|
|
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:
|
|
124
|
+
rubygems_version: 2.2.2
|
|
119
125
|
signing_key:
|
|
120
|
-
specification_version:
|
|
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