hugeurl 0.0.2 → 0.0.3
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/.gemtest +0 -0
- data/History.txt +5 -0
- data/Manifest.txt +2 -5
- data/README.rdoc +1 -1
- data/examples/example.rb +8 -3
- data/lib/hugeurl.rb +7 -5
- data/test/test_helper.rb +3 -0
- data/test/test_hugeurl.rb +23 -0
- metadata +39 -27
- data/spec/hugeurl_spec.rb +0 -31
- data/spec/spec.opts +0 -1
- data/spec/spec_helper.rb +0 -10
- data/spec/uri_spec.rb +0 -17
- data/tasks/rspec.rake +0 -21
data/.gemtest
ADDED
File without changes
|
data/History.txt
CHANGED
data/Manifest.txt
CHANGED
data/README.rdoc
CHANGED
data/examples/example.rb
CHANGED
@@ -1,10 +1,15 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
require File.dirname(__FILE__)+'/../lib/hugeurl'
|
3
3
|
|
4
|
-
tinyurl =
|
5
|
-
puts tinyurl
|
6
|
-
puts " => " + tinyurl.to_huge.to_s
|
4
|
+
puts tinyurl = "http://tinyurl.com/242tthb"
|
5
|
+
puts " => " + Hugeurl.get(tinyurl).to_s
|
7
6
|
|
8
7
|
bitly = URI.parse("http://bit.ly/d4VYD2")
|
9
8
|
puts bitly
|
10
9
|
puts " => " + bitly.to_huge.to_s
|
10
|
+
|
11
|
+
puts tco = URI.parse("http://t.co/sdMbEC7n")
|
12
|
+
puts " => #{tco.to_huge}"
|
13
|
+
|
14
|
+
puts gyamp = URI.parse("http://gyamp.com/shokai/shokai")
|
15
|
+
puts " => #{gyamp.to_huge}"
|
data/lib/hugeurl.rb
CHANGED
@@ -3,13 +3,15 @@ $:.unshift(File.dirname(__FILE__)) unless
|
|
3
3
|
|
4
4
|
require 'rubygems'
|
5
5
|
require 'uri'
|
6
|
-
require '
|
6
|
+
require 'net/http'
|
7
7
|
|
8
8
|
module Hugeurl
|
9
|
-
VERSION = '0.0.
|
10
|
-
def
|
11
|
-
|
12
|
-
|
9
|
+
VERSION = '0.0.3'
|
10
|
+
def self.get(url)
|
11
|
+
url = URI.parse url unless url.class.to_s =~ /^URI::/
|
12
|
+
res = Net::HTTP.start(url.host, url.port).
|
13
|
+
head(url.path.size < 1 ? '/' : url.path)
|
14
|
+
URI.parse res['location'] rescue return url
|
13
15
|
end
|
14
16
|
end
|
15
17
|
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestHugeurl < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
@source = "http://shokai.org"
|
7
|
+
@tinyurl = URI.parse("http://tinyurl.com/242tthb").to_huge
|
8
|
+
@tco = URI.parse("http://t.co/sdMbEC7n").to_huge
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_response
|
12
|
+
assert true if @tco.class == URI::HTTP
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_tco
|
16
|
+
assert true if @tco.to_s == @source
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_tinyurl
|
20
|
+
assert true if @tinyurl.to_s == @source
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hugeurl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 25
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Sho Hashimoto
|
@@ -15,41 +15,54 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
19
|
-
default_executable:
|
18
|
+
date: 2012-04-10 00:00:00 Z
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
22
|
-
name:
|
21
|
+
name: rdoc
|
23
22
|
prerelease: false
|
24
23
|
requirement: &id001 !ruby/object:Gem::Requirement
|
25
24
|
none: false
|
26
25
|
requirements:
|
27
|
-
- -
|
26
|
+
- - ~>
|
28
27
|
- !ruby/object:Gem::Version
|
29
|
-
hash:
|
28
|
+
hash: 19
|
30
29
|
segments:
|
31
|
-
-
|
32
|
-
-
|
33
|
-
|
34
|
-
version: 2.0.4
|
30
|
+
- 3
|
31
|
+
- 10
|
32
|
+
version: "3.10"
|
35
33
|
type: :development
|
36
34
|
version_requirements: *id001
|
37
35
|
- !ruby/object:Gem::Dependency
|
38
|
-
name:
|
36
|
+
name: newgem
|
39
37
|
prerelease: false
|
40
38
|
requirement: &id002 !ruby/object:Gem::Requirement
|
41
39
|
none: false
|
42
40
|
requirements:
|
43
41
|
- - ">="
|
44
42
|
- !ruby/object:Gem::Version
|
45
|
-
hash:
|
43
|
+
hash: 5
|
46
44
|
segments:
|
47
|
-
- 2
|
48
|
-
- 6
|
49
45
|
- 1
|
50
|
-
|
46
|
+
- 5
|
47
|
+
- 3
|
48
|
+
version: 1.5.3
|
51
49
|
type: :development
|
52
50
|
version_requirements: *id002
|
51
|
+
- !ruby/object:Gem::Dependency
|
52
|
+
name: hoe
|
53
|
+
prerelease: false
|
54
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
55
|
+
none: false
|
56
|
+
requirements:
|
57
|
+
- - ~>
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
hash: 29
|
60
|
+
segments:
|
61
|
+
- 2
|
62
|
+
- 15
|
63
|
+
version: "2.15"
|
64
|
+
type: :development
|
65
|
+
version_requirements: *id003
|
53
66
|
description: expand tinyurl and bit.ly
|
54
67
|
email:
|
55
68
|
- hashimoto@shokai.org
|
@@ -60,6 +73,7 @@ extensions: []
|
|
60
73
|
extra_rdoc_files:
|
61
74
|
- History.txt
|
62
75
|
- Manifest.txt
|
76
|
+
- README.rdoc
|
63
77
|
files:
|
64
78
|
- History.txt
|
65
79
|
- Manifest.txt
|
@@ -69,13 +83,10 @@ files:
|
|
69
83
|
- script/console
|
70
84
|
- script/destroy
|
71
85
|
- script/generate
|
72
|
-
- spec/hugeurl_spec.rb
|
73
|
-
- spec/uri_spec.rb
|
74
|
-
- spec/spec.opts
|
75
|
-
- spec/spec_helper.rb
|
76
|
-
- tasks/rspec.rake
|
77
86
|
- examples/example.rb
|
78
|
-
|
87
|
+
- test/test_helper.rb
|
88
|
+
- test/test_hugeurl.rb
|
89
|
+
- .gemtest
|
79
90
|
homepage: http://github.com/shokai/hugeurl
|
80
91
|
licenses: []
|
81
92
|
|
@@ -106,9 +117,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
106
117
|
requirements: []
|
107
118
|
|
108
119
|
rubyforge_project: hugeurl
|
109
|
-
rubygems_version: 1.
|
120
|
+
rubygems_version: 1.8.17
|
110
121
|
signing_key:
|
111
122
|
specification_version: 3
|
112
123
|
summary: expand tinyurl and bit.ly
|
113
|
-
test_files:
|
114
|
-
|
124
|
+
test_files:
|
125
|
+
- test/test_helper.rb
|
126
|
+
- test/test_hugeurl.rb
|
data/spec/hugeurl_spec.rb
DELETED
@@ -1,31 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/spec_helper.rb'
|
2
|
-
require 'uri'
|
3
|
-
|
4
|
-
describe Hugeurl, 'expand URL string "http://tinyurl.com/242tthb"' do
|
5
|
-
before(:all) do
|
6
|
-
@res = Hugeurl.get("http://tinyurl.com/242tthb")
|
7
|
-
end
|
8
|
-
|
9
|
-
it 'should return URI instance' do
|
10
|
-
@res.class.should == URI::HTTP
|
11
|
-
end
|
12
|
-
|
13
|
-
it 'should return expanded URI' do
|
14
|
-
@res.to_s.should == 'http://shokai.org'
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
describe Hugeurl, 'expand URI instance "http://bit.ly/d4VYD2"' do
|
19
|
-
before(:all) do
|
20
|
-
@res = Hugeurl.get(URI.parse("http://bit.ly/d4VYD2"))
|
21
|
-
end
|
22
|
-
|
23
|
-
it 'should return URI instance' do
|
24
|
-
@res.class.should == URI::HTTP
|
25
|
-
end
|
26
|
-
|
27
|
-
it 'should return expanded URI' do
|
28
|
-
@res.to_s.should == 'http://shokai.org'
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
data/spec/spec.opts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
--colour -fs
|
data/spec/spec_helper.rb
DELETED
data/spec/uri_spec.rb
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/spec_helper.rb'
|
2
|
-
require 'uri'
|
3
|
-
|
4
|
-
describe URI, 'URI.to_huge' do
|
5
|
-
before(:all) do
|
6
|
-
@res = URI.parse("http://tinyurl.com/242tthb").to_huge
|
7
|
-
end
|
8
|
-
|
9
|
-
it 'should return URI instance' do
|
10
|
-
@res.class.should == URI::HTTP
|
11
|
-
end
|
12
|
-
|
13
|
-
it 'should return expanded URI' do
|
14
|
-
@res.to_s.should == 'http://shokai.org'
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
data/tasks/rspec.rake
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
begin
|
2
|
-
require 'spec'
|
3
|
-
rescue LoadError
|
4
|
-
require 'rubygems' unless ENV['NO_RUBYGEMS']
|
5
|
-
require 'spec'
|
6
|
-
end
|
7
|
-
begin
|
8
|
-
require 'spec/rake/spectask'
|
9
|
-
rescue LoadError
|
10
|
-
puts <<-EOS
|
11
|
-
To use rspec for testing you must install rspec gem:
|
12
|
-
gem install rspec
|
13
|
-
EOS
|
14
|
-
exit(0)
|
15
|
-
end
|
16
|
-
|
17
|
-
desc "Run the specs under spec/models"
|
18
|
-
Spec::Rake::SpecTask.new do |t|
|
19
|
-
t.spec_opts = ['--options', "spec/spec.opts"]
|
20
|
-
t.spec_files = FileList['spec/**/*_spec.rb']
|
21
|
-
end
|