rest-more 0.7.1 → 0.7.2
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/.travis.yml +2 -1
- data/CHANGES.md +20 -0
- data/Gemfile +5 -1
- data/README.md +26 -0
- data/bin/rib-rest-core +22 -0
- data/example/rails2/Gemfile +1 -0
- data/example/rails2/app/views/application/helper.html.erb +1 -1
- data/example/rails2/config/environment.rb +10 -0
- data/example/rails2/config/rest-core.yaml +2 -2
- data/example/rails2/test/functional/application_controller_test.rb +3 -3
- data/example/rails2/test/unit/rails_util_test.rb +12 -7
- data/example/rails3/Gemfile +1 -0
- data/example/rails3/app/views/application/helper.html.erb +1 -1
- data/example/rails3/config/rest-core.yaml +2 -2
- data/example/rails3/test/functional/application_controller_test.rb +3 -3
- data/example/rails3/test/unit/rails_util_test.rb +12 -7
- data/lib/rest-core/client/bing.rb +92 -0
- data/lib/rest-core/client/bing/rails_util.rb +13 -0
- data/lib/rest-core/client/facebook.rb +2 -2
- data/lib/rest-core/client/facebook/rails_util.rb +28 -65
- data/lib/rest-core/client/flurry.rb +3 -3
- data/lib/rest-core/client/flurry/rails_util.rb +3 -64
- data/lib/rest-core/client/github.rb +3 -0
- data/lib/rest-core/client/github/rails_util.rb +13 -0
- data/lib/rest-core/client/linkedin.rb +2 -0
- data/lib/rest-core/client/linkedin/rails_util.rb +13 -0
- data/lib/rest-core/client/mixi.rb +2 -0
- data/lib/rest-core/client/mixi/rails_util.rb +13 -0
- data/lib/rest-core/client/twitter.rb +2 -0
- data/lib/rest-core/client/twitter/rails_util.rb +13 -0
- data/lib/rest-core/util/rails_util_util.rb +112 -5
- data/lib/rest-more.rb +4 -3
- data/lib/rest-more/version.rb +1 -1
- data/lib/rib/app/rest-core.rb +15 -0
- data/rest-more.gemspec +13 -4
- data/test/client/bing/test_api.rb +34 -0
- data/test/client/facebook/test_api.rb +12 -12
- data/test/client/facebook/test_cache.rb +3 -3
- data/test/client/facebook/test_default.rb +5 -5
- data/test/client/facebook/test_error.rb +25 -25
- data/test/client/facebook/test_handler.rb +12 -12
- data/test/client/facebook/test_load_config.rb +4 -4
- data/test/client/facebook/test_misc.rb +16 -16
- data/test/client/facebook/test_oauth.rb +3 -3
- data/test/client/facebook/test_old.rb +11 -11
- data/test/client/facebook/test_page.rb +4 -4
- data/test/client/facebook/test_parse.rb +14 -14
- data/test/client/facebook/test_serialize.rb +4 -4
- data/test/client/facebook/test_timeout.rb +4 -4
- data/test/client/flurry/test_metrics.rb +1 -1
- data/test/client/twitter/test_api.rb +1 -1
- metadata +16 -7
- data/lib/rest-core/client/simple.rb +0 -2
- data/lib/rest-core/client/universal.rb +0 -18
@@ -1,19 +1,19 @@
|
|
1
1
|
|
2
2
|
require 'rest-more/test'
|
3
3
|
|
4
|
-
describe
|
4
|
+
describe RC::Facebook do
|
5
5
|
after do
|
6
6
|
WebMock.reset!
|
7
7
|
RR.verify
|
8
8
|
end
|
9
9
|
|
10
10
|
should 'return true in authorized? if there is an access_token' do
|
11
|
-
|
12
|
-
|
11
|
+
RC::Facebook.new(:access_token => '1').authorized?.should.eq true
|
12
|
+
RC::Facebook.new(:access_token => nil).authorized?.should.eq false
|
13
13
|
end
|
14
14
|
|
15
15
|
should 'treat oauth_token as access_token as well' do
|
16
|
-
rg =
|
16
|
+
rg = RC::Facebook.new
|
17
17
|
hate_facebook = 'why the hell two different name?'
|
18
18
|
rg.data['oauth_token'] = hate_facebook
|
19
19
|
rg.authorized?.should.eq true
|
@@ -21,28 +21,28 @@ describe RestCore::Facebook do
|
|
21
21
|
end
|
22
22
|
|
23
23
|
should 'build correct headers' do
|
24
|
-
rg =
|
25
|
-
|
24
|
+
rg = RC::Facebook.new(:accept => 'text/html',
|
25
|
+
:lang => 'zh-tw')
|
26
26
|
|
27
|
-
headers = rg.dry.call(rg.send(:build_env))[
|
27
|
+
headers = rg.dry.call(rg.send(:build_env))[RC::REQUEST_HEADERS]
|
28
28
|
headers['Accept' ].should.eq 'text/html'
|
29
29
|
headers['Accept-Language'].should.eq 'zh-tw'
|
30
30
|
end
|
31
31
|
|
32
32
|
should 'build empty query string' do
|
33
|
-
rg =
|
34
|
-
(rg.dry.call(rg.send(:build_env))[
|
33
|
+
rg = RC::Facebook.new
|
34
|
+
(rg.dry.call(rg.send(:build_env))[RC::REQUEST_QUERY] || {}).
|
35
35
|
should.eq({})
|
36
36
|
end
|
37
37
|
|
38
38
|
should 'create access_token in query string' do
|
39
|
-
rg =
|
40
|
-
(rg.dry.call(rg.send(:build_env))[
|
39
|
+
rg = RC::Facebook.new(:access_token => 'token')
|
40
|
+
(rg.dry.call(rg.send(:build_env))[RC::REQUEST_QUERY] || {}).
|
41
41
|
should.eq({'access_token' => 'token'})
|
42
42
|
end
|
43
43
|
|
44
44
|
should 'build correct query string' do
|
45
|
-
rg =
|
45
|
+
rg = RC::Facebook.new(:access_token => 'token')
|
46
46
|
TestHelper.normalize_url(rg.url('', :message => 'hi!!')).
|
47
47
|
should.eq "#{rg.site}?access_token=token&message=hi%21%21"
|
48
48
|
|
@@ -53,20 +53,20 @@ describe RestCore::Facebook do
|
|
53
53
|
end
|
54
54
|
|
55
55
|
should 'auto decode json' do
|
56
|
-
rg =
|
56
|
+
rg = RC::Facebook.new(:json_decode => true)
|
57
57
|
stub_request(:get, rg.site).to_return(:body => '[]')
|
58
58
|
rg.get('').should.eq []
|
59
59
|
end
|
60
60
|
|
61
61
|
should 'not auto decode json' do
|
62
|
-
rg =
|
62
|
+
rg = RC::Facebook.new(:json_decode => false)
|
63
63
|
stub_request(:get, rg.site).to_return(:body => '[]')
|
64
64
|
rg.get('').should.eq '[]'
|
65
65
|
end
|
66
66
|
|
67
67
|
should 'give attributes' do
|
68
|
-
|
68
|
+
RC::Facebook.new(:json_decode => false).attributes.
|
69
69
|
keys.map(&:to_s).sort.should.eq \
|
70
|
-
|
70
|
+
RC::Facebook.members.map(&:to_s).sort
|
71
71
|
end
|
72
72
|
end
|
@@ -1,9 +1,9 @@
|
|
1
1
|
|
2
2
|
require 'rest-more/test'
|
3
3
|
|
4
|
-
describe
|
4
|
+
describe RC::Facebook do
|
5
5
|
before do
|
6
|
-
@rg =
|
6
|
+
@rg = RC::Facebook.new(:app_id => '29', :secret => '18')
|
7
7
|
@uri = 'http://zzz.tw'
|
8
8
|
end
|
9
9
|
|
@@ -31,7 +31,7 @@ describe RestCore::Facebook do
|
|
31
31
|
end
|
32
32
|
|
33
33
|
should 'not append access_token in authorize_url even presented' do
|
34
|
-
|
34
|
+
RC::Facebook.new(:access_token => 'do not use me').authorize_url.
|
35
35
|
should.eq 'https://graph.facebook.com/oauth/authorize'
|
36
36
|
end
|
37
37
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
require 'rest-more/test'
|
3
3
|
|
4
|
-
describe
|
4
|
+
describe RC::Facebook do
|
5
5
|
after do
|
6
6
|
WebMock.reset!
|
7
7
|
RR.verify
|
@@ -13,14 +13,14 @@ describe RestCore::Facebook do
|
|
13
13
|
stub_request(:get, "https://api.facebook.com/method/fql.query?#{query}").
|
14
14
|
to_return(:body => '[]')
|
15
15
|
|
16
|
-
|
16
|
+
RC::Facebook.new.fql(fql).should.eq []
|
17
17
|
|
18
18
|
token = 'token'.reverse
|
19
19
|
stub_request(:get, "https://api.facebook.com/method/fql.query?#{query}" \
|
20
20
|
"&access_token=#{token}").
|
21
21
|
to_return(:body => '[]')
|
22
22
|
|
23
|
-
|
23
|
+
RC::Facebook.new(:access_token => token).fql(fql).should.eq []
|
24
24
|
end
|
25
25
|
|
26
26
|
should 'do fql.mutilquery correctly' do
|
@@ -41,7 +41,7 @@ describe RestCore::Facebook do
|
|
41
41
|
}
|
42
42
|
|
43
43
|
stub_multi.call
|
44
|
-
|
44
|
+
RC::Facebook.new.fql_multi(:f0 => f0, :f1 => f1).should.eq []
|
45
45
|
end
|
46
46
|
|
47
47
|
should 'cache fake post in fql' do
|
@@ -52,7 +52,7 @@ describe RestCore::Facebook do
|
|
52
52
|
with(:body => {:query => query}).
|
53
53
|
to_return(:body => body)
|
54
54
|
|
55
|
-
|
55
|
+
RC::Facebook.new(:cache => (cache = {})).
|
56
56
|
fql(query, {}, :post => true).
|
57
57
|
first['name'] .should.eq 'Mark Zuckerberg'
|
58
58
|
cache.size .should.eq 1
|
@@ -60,19 +60,19 @@ describe RestCore::Facebook do
|
|
60
60
|
|
61
61
|
WebMock.reset! # should hit the cache
|
62
62
|
|
63
|
-
|
63
|
+
RC::Facebook.new(:cache => cache).fql(query, {}, :post => true).
|
64
64
|
first['name'] .should.eq 'Mark Zuckerberg'
|
65
65
|
cache.size .should.eq 1
|
66
66
|
cache.values.first.should.eq body
|
67
67
|
|
68
68
|
# query changed
|
69
69
|
should.raise(WebMock::NetConnectNotAllowedError) do
|
70
|
-
|
70
|
+
RC::Facebook.new(:cache => cache).
|
71
71
|
fql(query.upcase, {}, :post => true)
|
72
72
|
end
|
73
73
|
|
74
74
|
# cache should work for normal get
|
75
|
-
|
75
|
+
RC::Facebook.new(:cache => cache).fql(query).
|
76
76
|
first['name'] .should.eq 'Mark Zuckerberg'
|
77
77
|
cache.size .should.eq 1
|
78
78
|
cache.values.first.should.eq body
|
@@ -84,7 +84,7 @@ describe RestCore::Facebook do
|
|
84
84
|
'https://api.facebook.com/method/notes.create?format=json').
|
85
85
|
to_return(:body => body)
|
86
86
|
|
87
|
-
|
87
|
+
RC::Facebook.new.
|
88
88
|
old_rest('notes.create', {}, :json_decode => false).should.eq body
|
89
89
|
end
|
90
90
|
|
@@ -95,7 +95,7 @@ describe RestCore::Facebook do
|
|
95
95
|
'sessions=bad%20bed').
|
96
96
|
to_return(:body => '[{"access_token":"bogus"}]')
|
97
97
|
|
98
|
-
|
98
|
+
RC::Facebook.new(:app_id => 'id',
|
99
99
|
:secret => 'di').
|
100
100
|
exchange_sessions(:sessions => 'bad bed').
|
101
101
|
first['access_token'].should.eq 'bogus'
|
@@ -107,7 +107,7 @@ describe RestCore::Facebook do
|
|
107
107
|
'access_token=123%7Cs&format=json&properties=app_id'
|
108
108
|
).to_return(:body => '{"app_id":"123"}')
|
109
109
|
|
110
|
-
|
110
|
+
RC::Facebook.new(:app_id => '123', :secret => 's').
|
111
111
|
secret_old_rest('admin.getAppProperties', :properties => 'app_id').
|
112
112
|
should.eq({'app_id' => '123'})
|
113
113
|
end
|
@@ -1,14 +1,14 @@
|
|
1
1
|
|
2
2
|
require 'rest-more/test'
|
3
3
|
|
4
|
-
describe
|
4
|
+
describe RC::Facebook do
|
5
5
|
after do
|
6
6
|
WebMock.reset!
|
7
7
|
RR.verify
|
8
8
|
end
|
9
9
|
|
10
10
|
should 'get the next/prev page' do
|
11
|
-
rg =
|
11
|
+
rg = RC::Facebook.new(:site => '', :cache => false)
|
12
12
|
%w[next previous].each{ |type|
|
13
13
|
kind = "#{type}_page"
|
14
14
|
rg.send(kind, {}) .should.eq nil
|
@@ -21,7 +21,7 @@ describe RestCore::Facebook do
|
|
21
21
|
end
|
22
22
|
|
23
23
|
should 'merge all pages into one' do
|
24
|
-
rg =
|
24
|
+
rg = RC::Facebook.new(:site => '', :cache => false)
|
25
25
|
%w[next previous].each{ |type|
|
26
26
|
kind = "#{type}_page"
|
27
27
|
data = {'paging' => {type => 'zzz'}, 'data' => ['z']}
|
@@ -50,7 +50,7 @@ describe RestCore::Facebook do
|
|
50
50
|
end
|
51
51
|
|
52
52
|
should 'for_pages with callback' do
|
53
|
-
rg =
|
53
|
+
rg = RC::Facebook.new(:site => '', :cache => false)
|
54
54
|
%w[next previous].each{ |type|
|
55
55
|
kind = "#{type}_page"
|
56
56
|
data = {'paging' => {type => 'zzz'}, 'data' => ['z']}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
|
2
2
|
require 'rest-more/test'
|
3
3
|
|
4
|
-
describe
|
4
|
+
describe RC::Facebook do
|
5
5
|
|
6
6
|
should 'return nil if parse error, but not when call data directly' do
|
7
|
-
rg =
|
7
|
+
rg = RC::Facebook.new
|
8
8
|
rg.parse_cookies!({}).should.eq nil
|
9
9
|
rg.data .should.eq({})
|
10
10
|
end
|
@@ -13,7 +13,7 @@ describe RestCore::Facebook do
|
|
13
13
|
algorithm = 'HMAC-SHA256'
|
14
14
|
user = '{"country"=>"us", "age"=>{"min"=>21}}'
|
15
15
|
data = {'algorithm' => algorithm, 'user' => user}
|
16
|
-
rg =
|
16
|
+
rg = RC::Facebook.new(:data => data, :secret => 'secret')
|
17
17
|
sig = rg.send(:calculate_sig, data)
|
18
18
|
rg.parse_fbs!("\"#{rg.fbs}\"").should.eq data.merge('sig' => sig)
|
19
19
|
end
|
@@ -31,7 +31,7 @@ describe RestCore::Facebook do
|
|
31
31
|
"__utma=123; __utmz=456.utmcsr=(d)|utmccn=(d)|utmcmd=(n); " \
|
32
32
|
"fbs_#{app_id}=#{fbs1}"
|
33
33
|
|
34
|
-
rg
|
34
|
+
rg = RC::Facebook.new(:app_id => app_id, :secret => secret)
|
35
35
|
rg.parse_rack_env!('HTTP_COOKIE' => http_cookie).
|
36
36
|
should.kind_of?(token ? Hash : NilClass)
|
37
37
|
rg.access_token.should.eq token
|
@@ -55,20 +55,20 @@ describe RestCore::Facebook do
|
|
55
55
|
end
|
56
56
|
|
57
57
|
should 'not pass if there is no secret, prevent from forgery' do
|
58
|
-
rg =
|
58
|
+
rg = RC::Facebook.new
|
59
59
|
rg.parse_fbs!('"feed=me&sig=bddd192cf27f22c05f61c8bea24fa4b7"').
|
60
60
|
should.eq nil
|
61
61
|
end
|
62
62
|
|
63
63
|
should 'parse json correctly' do
|
64
|
-
rg =
|
64
|
+
rg = RC::Facebook.new
|
65
65
|
|
66
66
|
rg.parse_json!('bad json') .should.eq nil
|
67
67
|
rg.parse_json!('{"no":"sig"}').should.eq nil
|
68
68
|
rg.parse_json!('{"feed":"me","sig":"bddd192cf27f22c05f61c8bea24fa4b7"}').
|
69
69
|
should.eq nil
|
70
70
|
|
71
|
-
rg =
|
71
|
+
rg = RC::Facebook.new(:secret => 'bread')
|
72
72
|
rg.parse_json!('{"feed":"me","sig":"20393e7823730308938a86ecf1c88b14"}').
|
73
73
|
should.eq({'feed' => 'me', 'sig' => "20393e7823730308938a86ecf1c88b14"})
|
74
74
|
rg.data.empty?.should.eq false
|
@@ -82,7 +82,7 @@ describe RestCore::Facebook do
|
|
82
82
|
end
|
83
83
|
|
84
84
|
def setup_sr secret, data, sig=nil
|
85
|
-
json_encoded = encode(
|
85
|
+
json_encoded = encode(RC::JsonDecode.json_encode(data))
|
86
86
|
sig ||= OpenSSL::HMAC.digest('sha256', secret, json_encoded)
|
87
87
|
"#{encode(sig)}.#{json_encoded}"
|
88
88
|
end
|
@@ -93,7 +93,7 @@ describe RestCore::Facebook do
|
|
93
93
|
|
94
94
|
should 'parse' do
|
95
95
|
secret = 'aloha'
|
96
|
-
rg =
|
96
|
+
rg = RC::Facebook.new(:secret => secret)
|
97
97
|
rg.parse_signed_request!(setup_sr(secret, {'ooh' => 'dir',
|
98
98
|
'moo' => 'bar'}))
|
99
99
|
rg.data['ooh'].should.eq 'dir'
|
@@ -111,7 +111,7 @@ describe RestCore::Facebook do
|
|
111
111
|
access_token = 'lololo'
|
112
112
|
user_id = 123
|
113
113
|
app_id = 456
|
114
|
-
rg =
|
114
|
+
rg = RC::Facebook.new(:secret => secret,
|
115
115
|
:app_id => app_id)
|
116
116
|
mock(rg).authorize!(hash_including(:code => code)){
|
117
117
|
rg.data = {'access_token' => access_token}
|
@@ -138,17 +138,17 @@ describe RestCore::Facebook do
|
|
138
138
|
key, data = 'top', 'secret'
|
139
139
|
digest = OpenSSL::HMAC.digest('sha256', key, data)
|
140
140
|
mock(OpenSSL::HMAC).digest('sha256', key, data){ raise 'boom' }
|
141
|
-
|
141
|
+
RC::Hmac.sha256(key, data).should.eq digest
|
142
142
|
end
|
143
143
|
|
144
144
|
should 'generate correct fbs with correct sig' do
|
145
|
-
|
145
|
+
RC::Facebook.new(:access_token => 'fake', :secret => 's').fbs.
|
146
146
|
should.eq \
|
147
147
|
"access_token=fake&sig=#{Digest::MD5.hexdigest('access_token=fakes')}"
|
148
148
|
end
|
149
149
|
|
150
150
|
should 'parse fbs from facebook response which lacks sig...' do
|
151
|
-
rg =
|
151
|
+
rg = RC::Facebook.new(:access_token => 'a', :secret => 'z')
|
152
152
|
rg.parse_fbs!(rg.fbs) .should.kind_of?(Hash)
|
153
153
|
rg.data.empty?.should.eq false
|
154
154
|
rg.parse_fbs!(rg.fbs.sub(/sig\=\w+/, 'sig=abc')).should.eq nil
|
@@ -156,7 +156,7 @@ describe RestCore::Facebook do
|
|
156
156
|
end
|
157
157
|
|
158
158
|
should 'generate correct fbs with additional parameters' do
|
159
|
-
rg =
|
159
|
+
rg = RC::Facebook.new(:access_token => 'a', :secret => 'z')
|
160
160
|
rg.data['expires'] = '1234'
|
161
161
|
rg.parse_fbs!(rg.fbs).should.kind_of?(Hash)
|
162
162
|
rg.access_token .should.eq 'a'
|
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
require 'rest-more/test'
|
3
3
|
|
4
|
-
describe
|
4
|
+
describe RC::Facebook do
|
5
5
|
after do
|
6
6
|
WebMock.reset!
|
7
7
|
RR.verify
|
@@ -27,7 +27,7 @@ describe RestCore::Facebook do
|
|
27
27
|
|
28
28
|
engines.each{ |engine|
|
29
29
|
test = lambda{ |obj| engine.load(engine.dump(obj)) }
|
30
|
-
rg =
|
30
|
+
rg = RC::Facebook.new(:log_handler => lambda{})
|
31
31
|
lambda{ test[rg] }.should.raise(TypeError)
|
32
32
|
test[rg.lighten].should.eq rg.lighten
|
33
33
|
lambda{ test[rg] }.should.raise(TypeError)
|
@@ -37,7 +37,7 @@ describe RestCore::Facebook do
|
|
37
37
|
end
|
38
38
|
|
39
39
|
should 'lighten takes options to change attributes' do
|
40
|
-
|
41
|
-
|
40
|
+
RC::Facebook.new.lighten(:timeout => 100 ).timeout.should.eq 100
|
41
|
+
RC::Facebook.new.lighten(:lang => 'zh-TW').lang.should.eq 'zh-TW'
|
42
42
|
end
|
43
43
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
require 'rest-more/test'
|
3
3
|
|
4
|
-
describe
|
4
|
+
describe RC::Facebook do
|
5
5
|
after do
|
6
6
|
WebMock.reset!
|
7
7
|
RR.verify
|
@@ -11,12 +11,12 @@ describe RestCore::Facebook do
|
|
11
11
|
stub_request(:get, 'https://graph.facebook.com/me').
|
12
12
|
to_return(:body => '{}')
|
13
13
|
mock.proxy(Timeout).timeout(numeric)
|
14
|
-
|
14
|
+
RC::Facebook.new.get('me').should.eq({})
|
15
15
|
end
|
16
16
|
|
17
17
|
should 'override timeout' do
|
18
|
-
mock(Timeout).timeout(99){ {
|
19
|
-
|
18
|
+
mock(Timeout).timeout(99){ {RC::Facebook::RESPONSE_BODY => true} }
|
19
|
+
RC::Facebook.new(:timeout => 1).get('me', {}, :timeout => 99).
|
20
20
|
should.eq true
|
21
21
|
end
|
22
22
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rest-more
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,11 +10,11 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-11-05 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rest-core
|
17
|
-
requirement: &
|
17
|
+
requirement: &2168813800 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ! '>='
|
@@ -22,14 +22,15 @@ dependencies:
|
|
22
22
|
version: '0'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *2168813800
|
26
26
|
description: ! 'Various REST clients such as Facebook and Twitter built with [rest-core][]
|
27
27
|
|
28
28
|
|
29
29
|
[rest-core]: https://github.com/cardinalblue/rest-core'
|
30
30
|
email:
|
31
31
|
- dev (XD) cardinalblue.com
|
32
|
-
executables:
|
32
|
+
executables:
|
33
|
+
- rib-rest-core
|
33
34
|
extensions: []
|
34
35
|
extra_rdoc_files: []
|
35
36
|
files:
|
@@ -42,6 +43,7 @@ files:
|
|
42
43
|
- README.md
|
43
44
|
- Rakefile
|
44
45
|
- TODO.md
|
46
|
+
- bin/rib-rest-core
|
45
47
|
- example/rails2/Gemfile
|
46
48
|
- example/rails2/README
|
47
49
|
- example/rails2/Rakefile
|
@@ -82,24 +84,30 @@ files:
|
|
82
84
|
- example/rails3/test/test_helper.rb
|
83
85
|
- example/rails3/test/unit/rails_util_test.rb
|
84
86
|
- example/sinatra/config.ru
|
87
|
+
- lib/rest-core/client/bing.rb
|
88
|
+
- lib/rest-core/client/bing/rails_util.rb
|
85
89
|
- lib/rest-core/client/facebook.rb
|
86
90
|
- lib/rest-core/client/facebook/rails_util.rb
|
87
91
|
- lib/rest-core/client/flurry.rb
|
88
92
|
- lib/rest-core/client/flurry/rails_util.rb
|
89
93
|
- lib/rest-core/client/github.rb
|
94
|
+
- lib/rest-core/client/github/rails_util.rb
|
90
95
|
- lib/rest-core/client/linkedin.rb
|
96
|
+
- lib/rest-core/client/linkedin/rails_util.rb
|
91
97
|
- lib/rest-core/client/mixi.rb
|
92
|
-
- lib/rest-core/client/
|
98
|
+
- lib/rest-core/client/mixi/rails_util.rb
|
93
99
|
- lib/rest-core/client/twitter.rb
|
94
|
-
- lib/rest-core/client/
|
100
|
+
- lib/rest-core/client/twitter/rails_util.rb
|
95
101
|
- lib/rest-core/util/config.rb
|
96
102
|
- lib/rest-core/util/rails_util_util.rb
|
97
103
|
- lib/rest-more.rb
|
98
104
|
- lib/rest-more/test.rb
|
99
105
|
- lib/rest-more/version.rb
|
106
|
+
- lib/rib/app/rest-core.rb
|
100
107
|
- rest-more.gemspec
|
101
108
|
- task/.gitignore
|
102
109
|
- task/gemgem.rb
|
110
|
+
- test/client/bing/test_api.rb
|
103
111
|
- test/client/facebook/config/rest-core.yaml
|
104
112
|
- test/client/facebook/test_api.rb
|
105
113
|
- test/client/facebook/test_cache.rb
|
@@ -142,6 +150,7 @@ signing_key:
|
|
142
150
|
specification_version: 3
|
143
151
|
summary: Various REST clients such as Facebook and Twitter built with [rest-core][]
|
144
152
|
test_files:
|
153
|
+
- test/client/bing/test_api.rb
|
145
154
|
- test/client/facebook/test_api.rb
|
146
155
|
- test/client/facebook/test_cache.rb
|
147
156
|
- test/client/facebook/test_default.rb
|