deelay 0.2.3 → 0.2.4
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/Gemfile +5 -0
- data/lib/deelay/deelay_app.rb +2 -2
- data/lib/deelay/version.rb +1 -1
- data/spec/deelay_app_spec.rb +44 -0
- metadata +9 -7
data/Gemfile
CHANGED
data/lib/deelay/deelay_app.rb
CHANGED
@@ -6,7 +6,7 @@ class DeelayApp < Sinatra::Base
|
|
6
6
|
|
7
7
|
get '/:delay' do
|
8
8
|
delay = params[:delay].to_i
|
9
|
-
url = request.query_string
|
9
|
+
url = URI.unescape(request.query_string)
|
10
10
|
|
11
11
|
raise "Invalid URL" if (URI::regexp =~ url).nil?
|
12
12
|
|
@@ -14,7 +14,7 @@ class DeelayApp < Sinatra::Base
|
|
14
14
|
redirect url
|
15
15
|
end
|
16
16
|
|
17
|
-
error
|
17
|
+
error do
|
18
18
|
redirect "#{Deelay::HOMEPAGE}/error"
|
19
19
|
end
|
20
20
|
|
data/lib/deelay/version.rb
CHANGED
@@ -0,0 +1,44 @@
|
|
1
|
+
require_relative '../lib/deelay'
|
2
|
+
require 'rspec'
|
3
|
+
require 'rack/test'
|
4
|
+
|
5
|
+
Sinatra::Base.set :environment, :test
|
6
|
+
|
7
|
+
describe "DeelayApp" do
|
8
|
+
include Rack::Test::Methods
|
9
|
+
|
10
|
+
def app
|
11
|
+
Deelay::DeelayApp
|
12
|
+
end
|
13
|
+
|
14
|
+
context "when url invalid" do
|
15
|
+
it "raise error if protocol missing" do
|
16
|
+
expect {
|
17
|
+
get "/10?testurl.com"
|
18
|
+
}.to raise_error
|
19
|
+
end
|
20
|
+
|
21
|
+
it "raise error if protocol missing" do
|
22
|
+
expect {
|
23
|
+
get "/10?/testurl.com"
|
24
|
+
}.to raise_error
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
context "when url valid" do
|
29
|
+
it "redirects request with port" do
|
30
|
+
get "/10?http://testurl.com:1234"
|
31
|
+
last_response.status.should == 302
|
32
|
+
end
|
33
|
+
|
34
|
+
it "redirects request without port" do
|
35
|
+
get "/10?http://testurl.com"
|
36
|
+
last_response.status.should == 302
|
37
|
+
end
|
38
|
+
|
39
|
+
it "redirects to specified url" do
|
40
|
+
get "/10?http://testurl.com"
|
41
|
+
last_response.location.should == "http://testurl.com"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: deelay
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
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: 2012-
|
12
|
+
date: 2012-10-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70224697153080 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70224697153080
|
25
25
|
description: Delay proxy for http resources
|
26
26
|
email:
|
27
27
|
- gbiesiadecki@gmail.com
|
@@ -39,6 +39,7 @@ files:
|
|
39
39
|
- lib/deelay/deelay_app.rb
|
40
40
|
- lib/deelay/homepage.rb
|
41
41
|
- lib/deelay/version.rb
|
42
|
+
- spec/deelay_app_spec.rb
|
42
43
|
homepage: http://deelay.me
|
43
44
|
licenses: []
|
44
45
|
post_install_message:
|
@@ -53,7 +54,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
53
54
|
version: '0'
|
54
55
|
segments:
|
55
56
|
- 0
|
56
|
-
hash:
|
57
|
+
hash: 4605244274232536069
|
57
58
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
58
59
|
none: false
|
59
60
|
requirements:
|
@@ -62,11 +63,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
62
63
|
version: '0'
|
63
64
|
segments:
|
64
65
|
- 0
|
65
|
-
hash:
|
66
|
+
hash: 4605244274232536069
|
66
67
|
requirements: []
|
67
68
|
rubyforge_project: deelay
|
68
69
|
rubygems_version: 1.8.15
|
69
70
|
signing_key:
|
70
71
|
specification_version: 3
|
71
72
|
summary: Delay proxy
|
72
|
-
test_files:
|
73
|
+
test_files:
|
74
|
+
- spec/deelay_app_spec.rb
|