pixy 0.1.0 → 0.1.1
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/README.md +8 -6
- data/lib/pixy.rb +8 -0
- data/lib/pixy/shorten.rb +7 -7
- data/lib/pixy/version.rb +1 -1
- data/spec/spec_helper.rb +3 -3
- metadata +16 -10
data/README.md
CHANGED
@@ -1,22 +1,24 @@
|
|
1
|
-
# Pixy
|
2
|
-
|
3
|
-
[](http://travis-ci.org/NARKOZ/pixy)
|
1
|
+
# Pixy [](http://travis-ci.org/NARKOZ/pixy)
|
4
2
|
|
5
3
|
Pixy is an API wrapper for Pixiv url shortener - [p.tl](http://p.tl/)
|
6
4
|
|
7
5
|
## Installation
|
8
6
|
|
9
|
-
```
|
10
|
-
gem
|
11
|
-
# gem install pixy
|
7
|
+
```sh
|
8
|
+
gem install pixy
|
12
9
|
```
|
13
10
|
|
14
11
|
## Usage
|
15
12
|
|
13
|
+
Get an API key here: http://p.tl/key_create.php
|
14
|
+
|
16
15
|
```ruby
|
17
16
|
Pixy.shorten!(API_KEY, 'https://github.com/narkoz/pixy')
|
18
17
|
# => "http://p.tl/Us9R"
|
19
18
|
|
19
|
+
Pixy.stats API_KEY
|
20
|
+
# => {:calls=>12, :limit=>988}
|
21
|
+
|
20
22
|
pixy = Pixy.shorten(API_KEY, 'https://github.com/narkoz/pixy')
|
21
23
|
# => #<Pixy::Shorten:0x0000010201bde8 @status="ok", @long_url="https://github.com/narkoz/pixy", @short_url="http://p.tl/Us9R", @counter=20>
|
22
24
|
|
data/lib/pixy.rb
CHANGED
data/lib/pixy/shorten.rb
CHANGED
@@ -4,16 +4,16 @@ module Pixy
|
|
4
4
|
attr_accessor :status, :long_url, :short_url, :counter
|
5
5
|
|
6
6
|
def initialize(key, url)
|
7
|
-
uri = URI "#{API_URL}?key=#{key}&url=#{escape_url(url)}"
|
7
|
+
uri = URI "#{API_URL}?key=#{key}&url=#{escape_url escape_url(url)}"
|
8
8
|
response = Net::HTTP.get_response(uri)
|
9
9
|
result = JSON.parse(response.body)
|
10
10
|
|
11
11
|
if response.code.to_i == 200
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
raise_exception
|
12
|
+
@status = result['status']
|
13
|
+
@long_url = result['long_url']
|
14
|
+
@short_url = result['short_url']
|
15
|
+
@counter = result['counter']
|
16
|
+
raise_exception @status unless @status == 'ok'
|
17
17
|
else
|
18
18
|
raise UnknownError, "Server responded with code #{response.code}"
|
19
19
|
end
|
@@ -39,7 +39,7 @@ module Pixy
|
|
39
39
|
end
|
40
40
|
|
41
41
|
def escape_url(url)
|
42
|
-
URI.
|
42
|
+
URI.encode_www_form_component(url).gsub('+', '%20')
|
43
43
|
end
|
44
44
|
end
|
45
45
|
end
|
data/lib/pixy/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -5,12 +5,12 @@ require 'pixy'
|
|
5
5
|
FakeWeb.allow_net_connect = false
|
6
6
|
|
7
7
|
def escape_url(url)
|
8
|
-
URI.
|
8
|
+
URI.encode_www_form_component(url).gsub('+', '%20')
|
9
9
|
end
|
10
10
|
|
11
11
|
API_URL = 'http://p.tl/api/api_simple.php'
|
12
|
-
url_to_shorten = escape_url("https://github.com/narkoz/pixy")
|
13
|
-
invalid_url_to_shorten = escape_url("^_^")
|
12
|
+
url_to_shorten = escape_url escape_url("https://github.com/narkoz/pixy")
|
13
|
+
invalid_url_to_shorten = escape_url escape_url("^_^")
|
14
14
|
|
15
15
|
def load_fixture(name)
|
16
16
|
File.open(File.dirname(__FILE__) + "/fixtures/#{name}.json").read
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pixy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
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-12-
|
12
|
+
date: 2011-12-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
16
|
-
requirement: &
|
16
|
+
requirement: &2168716640 !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: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2168716640
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rake
|
27
|
-
requirement: &
|
27
|
+
requirement: &2168716180 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2168716180
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec
|
38
|
-
requirement: &
|
38
|
+
requirement: &2168715720 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2168715720
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: fakeweb
|
49
|
-
requirement: &
|
49
|
+
requirement: &2168715240 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,7 +54,7 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2168715240
|
58
58
|
description: Pixy is an API wrapper for Pixiv url shortener - p.tl
|
59
59
|
email:
|
60
60
|
- mail@narkoz.me
|
@@ -92,12 +92,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
92
92
|
- - ! '>='
|
93
93
|
- !ruby/object:Gem::Version
|
94
94
|
version: '0'
|
95
|
+
segments:
|
96
|
+
- 0
|
97
|
+
hash: 1002057726999351752
|
95
98
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
96
99
|
none: false
|
97
100
|
requirements:
|
98
101
|
- - ! '>='
|
99
102
|
- !ruby/object:Gem::Version
|
100
103
|
version: '0'
|
104
|
+
segments:
|
105
|
+
- 0
|
106
|
+
hash: 1002057726999351752
|
101
107
|
requirements: []
|
102
108
|
rubyforge_project:
|
103
109
|
rubygems_version: 1.8.12
|