fb_graph 2.4.15 → 2.4.16
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +4 -4
- data/VERSION +1 -1
- data/lib/fb_graph/application.rb +2 -0
- data/lib/fb_graph/connections/banned.rb +31 -0
- data/lib/fb_graph/connections/roles.rb +36 -0
- data/lib/fb_graph/connections/user_likes.rb +1 -1
- data/lib/fb_graph/open_graph/action.rb +6 -1
- data/lib/fb_graph/photo.rb +1 -1
- data/lib/fb_graph/role.rb +13 -0
- data/lib/fb_graph.rb +1 -0
- data/spec/fb_graph/connections/accounts_spec.rb +42 -40
- data/spec/fb_graph/connections/banned_spec.rb +63 -0
- data/spec/fb_graph/connections/roles_spec.rb +59 -0
- data/spec/fb_graph/open_graph/action_spec.rb +2 -0
- data/spec/mock_json/app_token_response.json +1 -0
- data/spec/mock_json/applications/banned/banned_user.json +9 -0
- data/spec/mock_json/applications/banned/list.json +13 -0
- data/spec/mock_json/applications/roles/list.json +1 -0
- data/spec/mock_json/open_graph/custom_actions.json +1 -0
- metadata +77 -19
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
fb_graph (2.4.
|
4
|
+
fb_graph (2.4.15)
|
5
5
|
httpclient (>= 2.2.0.2)
|
6
6
|
rack-oauth2 (>= 0.14.4)
|
7
7
|
tzinfo
|
@@ -41,8 +41,8 @@ GEM
|
|
41
41
|
httpclient (2.2.5)
|
42
42
|
i18n (0.6.0)
|
43
43
|
journey (1.0.3)
|
44
|
-
json (1.7.
|
45
|
-
multi_json (1.3.
|
44
|
+
json (1.7.3)
|
45
|
+
multi_json (1.3.5)
|
46
46
|
rack (1.4.1)
|
47
47
|
rack-cache (1.2)
|
48
48
|
rack (>= 0.4)
|
@@ -70,7 +70,7 @@ GEM
|
|
70
70
|
tilt (~> 1.1, != 1.3.0)
|
71
71
|
tilt (1.3.3)
|
72
72
|
tzinfo (0.3.33)
|
73
|
-
webmock (1.8.
|
73
|
+
webmock (1.8.7)
|
74
74
|
addressable (>= 2.2.7)
|
75
75
|
crack (>= 0.1.7)
|
76
76
|
yamler (0.1.0)
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.4.
|
1
|
+
2.4.16
|
data/lib/fb_graph/application.rb
CHANGED
@@ -2,9 +2,11 @@ module FbGraph
|
|
2
2
|
class Application < Node
|
3
3
|
include Connections::Accounts
|
4
4
|
include Connections::Achievements
|
5
|
+
include Connections::Banned
|
5
6
|
include Connections::Insights
|
6
7
|
include Connections::Payments
|
7
8
|
include Connections::Picture
|
9
|
+
include Connections::Roles
|
8
10
|
include Connections::Subscriptions
|
9
11
|
include Connections::TestUsers
|
10
12
|
include Connections::Videos
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module FbGraph
|
2
|
+
module Connections
|
3
|
+
module Banned
|
4
|
+
def banned(options = {})
|
5
|
+
banned = self.connection :banned, options
|
6
|
+
banned.map! do |user|
|
7
|
+
User.new(user[:id], user.merge(
|
8
|
+
:access_token => options[:access_token] || self.access_token
|
9
|
+
))
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
def banned?(user, options = {})
|
14
|
+
banned = self.connection :banned, options.merge(:connection_scope => user.identifier)
|
15
|
+
banned.present?
|
16
|
+
end
|
17
|
+
|
18
|
+
def ban!(*users)
|
19
|
+
options = users.extract_options!
|
20
|
+
post options.merge(
|
21
|
+
:connection => :banned,
|
22
|
+
:uid => Array(users).flatten.collect(&:identifier).join(',')
|
23
|
+
)
|
24
|
+
end
|
25
|
+
|
26
|
+
def unban!(user, options = {})
|
27
|
+
delete options.merge(:connection => :banned, :connection_scope => user.identifier)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
module FbGraph
|
2
|
+
module Connections
|
3
|
+
module Roles
|
4
|
+
def roles(options = {})
|
5
|
+
roles = self.connection :roles, options
|
6
|
+
roles.map! do |role|
|
7
|
+
Role.new role
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def admin!(user, options = {})
|
12
|
+
role! user, options.merge(:role => 'administrators')
|
13
|
+
end
|
14
|
+
|
15
|
+
def developer!(user, options = {})
|
16
|
+
role! user, options.merge(:role => 'developers')
|
17
|
+
end
|
18
|
+
|
19
|
+
def tester!(user, options = {})
|
20
|
+
role! user, options.merge(:role => 'testers')
|
21
|
+
end
|
22
|
+
|
23
|
+
def insights_user!(user, options = {})
|
24
|
+
role! user, options.merge(:role => 'insights users')
|
25
|
+
end
|
26
|
+
|
27
|
+
def role!(user, options = {})
|
28
|
+
post options.merge(:user => user.identifier, :connection => :roles)
|
29
|
+
end
|
30
|
+
|
31
|
+
def unrole!(user, options = {})
|
32
|
+
delete options.merge(:user => user.identifier, :connection => :roles)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -21,7 +21,12 @@ module FbGraph
|
|
21
21
|
@objects = {}
|
22
22
|
if attributes[:data]
|
23
23
|
attributes[:data].each do |key, _attributes_|
|
24
|
-
@objects[key] =
|
24
|
+
@objects[key] = case _attributes_
|
25
|
+
when Hash
|
26
|
+
Object.new _attributes_[:id], _attributes_
|
27
|
+
else
|
28
|
+
_attributes_
|
29
|
+
end
|
25
30
|
end
|
26
31
|
end
|
27
32
|
@objects = @objects.with_indifferent_access
|
data/lib/fb_graph/photo.rb
CHANGED
@@ -0,0 +1,13 @@
|
|
1
|
+
module FbGraph
|
2
|
+
class Role
|
3
|
+
include Comparison
|
4
|
+
|
5
|
+
attr_accessor :role, :user, :application
|
6
|
+
|
7
|
+
def initialize(attributes = {})
|
8
|
+
@role = attributes[:role]
|
9
|
+
@user = User.new attributes[:user]
|
10
|
+
@application = Application.new attributes[:app_id]
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/fb_graph.rb
CHANGED
@@ -1,59 +1,61 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe FbGraph::Connections::Accounts
|
4
|
-
|
5
|
-
context 'when
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
context 'when access_token is given' do
|
16
|
-
it 'should return accounts as FbGraph::Page' do
|
17
|
-
mock_graph :get, 'matake/accounts', 'users/accounts/matake_private', :access_token => 'access_token' do
|
18
|
-
accounts = FbGraph::User.new('matake', :access_token => 'access_token').accounts
|
19
|
-
accounts.class.should == FbGraph::Connection
|
20
|
-
accounts.first.should == FbGraph::Page.new(
|
21
|
-
'140478125968442',
|
22
|
-
:access_token => 'access_token',
|
23
|
-
:name => 'OAuth.jp',
|
24
|
-
:category => 'Technology'
|
25
|
-
)
|
26
|
-
accounts.each do |account|
|
27
|
-
account.should be_instance_of(FbGraph::Page)
|
3
|
+
describe FbGraph::Connections::Accounts do
|
4
|
+
describe '#accounts' do
|
5
|
+
context 'when included by FbGraph::User' do
|
6
|
+
context 'when no access_token given' do
|
7
|
+
it 'should raise FbGraph::Unauthorized' do
|
8
|
+
mock_graph :get, 'matake/accounts', 'users/accounts/matake_public', :status => [401, 'Unauthorized'] do
|
9
|
+
lambda do
|
10
|
+
FbGraph::User.new('matake').accounts
|
11
|
+
end.should raise_exception(FbGraph::Unauthorized)
|
28
12
|
end
|
29
13
|
end
|
30
14
|
end
|
31
15
|
|
32
|
-
context 'when
|
33
|
-
it 'should
|
34
|
-
mock_graph :get, 'matake/accounts', 'users/accounts/
|
35
|
-
accounts = FbGraph::User.new('matake', :access_token => '
|
16
|
+
context 'when access_token is given' do
|
17
|
+
it 'should return accounts as FbGraph::Page' do
|
18
|
+
mock_graph :get, 'matake/accounts', 'users/accounts/matake_private', :access_token => 'access_token' do
|
19
|
+
accounts = FbGraph::User.new('matake', :access_token => 'access_token').accounts
|
20
|
+
accounts.class.should == FbGraph::Connection
|
36
21
|
accounts.first.should == FbGraph::Page.new(
|
37
22
|
'140478125968442',
|
38
|
-
:access_token => '
|
23
|
+
:access_token => 'access_token',
|
39
24
|
:name => 'OAuth.jp',
|
40
25
|
:category => 'Technology'
|
41
26
|
)
|
27
|
+
accounts.each do |account|
|
28
|
+
account.should be_instance_of(FbGraph::Page)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
context 'when manage_pages permission given' do
|
34
|
+
it 'should has special access_token behalf of the page' do
|
35
|
+
mock_graph :get, 'matake/accounts', 'users/accounts/matake_private_with_manage_pages_permission', :access_token => 'access_token_for_user' do
|
36
|
+
accounts = FbGraph::User.new('matake', :access_token => 'access_token_for_user').accounts
|
37
|
+
accounts.first.should == FbGraph::Page.new(
|
38
|
+
'140478125968442',
|
39
|
+
:access_token => 'access_token_for_oauth_jp',
|
40
|
+
:name => 'OAuth.jp',
|
41
|
+
:category => 'Technology'
|
42
|
+
)
|
43
|
+
end
|
42
44
|
end
|
43
45
|
end
|
44
46
|
end
|
45
47
|
end
|
46
|
-
end
|
47
48
|
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
49
|
+
context 'when included by FbGraph::Application' do
|
50
|
+
it 'should return an array of TestUser' do
|
51
|
+
mock_graph :get, 'app/accounts', 'applications/accounts/private', :access_token => 'access_token_for_app' do
|
52
|
+
accounts = FbGraph::Application.new('app', :access_token => 'access_token_for_app').accounts
|
53
|
+
accounts.first.should == FbGraph::TestUser.new(
|
54
|
+
'100002527044219',
|
55
|
+
:access_token => '117950878254050|2.AQA7fQ_BuZqxAiHc.3600.1308646800.0-100002527044219|T1wRNmvnx5j5nw-2x00gZgdBjbo',
|
56
|
+
:login_url => 'https://www.facebook.com/platform/test_account_login.php?user_id=100002527044219&n=SOlkQGg6Icr5BeI'
|
57
|
+
)
|
58
|
+
end
|
57
59
|
end
|
58
60
|
end
|
59
61
|
end
|
@@ -0,0 +1,63 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe FbGraph::Connections::Banned do
|
4
|
+
let(:app) { FbGraph::Application.new('app_id', :secret => 'app_secret') }
|
5
|
+
let(:user) { FbGraph::User.new('uid') }
|
6
|
+
|
7
|
+
describe '#banned' do
|
8
|
+
it 'should return an Array of FbGraph::User' do
|
9
|
+
mock_graph :post, 'oauth/access_token', 'app_token_response' do
|
10
|
+
mock_graph :get, 'app_id/banned', 'applications/banned/list', :access_token => 'app_token' do
|
11
|
+
users = app.banned
|
12
|
+
users.each do |user|
|
13
|
+
user.should be_a FbGraph::User
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
describe '#banned?' do
|
21
|
+
context 'when banned' do
|
22
|
+
it 'should retrun true' do
|
23
|
+
mock_graph :post, 'oauth/access_token', 'app_token_response' do
|
24
|
+
mock_graph :get, 'app_id/banned/uid', 'applications/banned/banned_user', :access_token => 'app_token' do
|
25
|
+
app.banned?(user).should be_true
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'otherwise' do
|
32
|
+
it 'should retrun false' do
|
33
|
+
mock_graph :post, 'oauth/access_token', 'app_token_response' do
|
34
|
+
mock_graph :get, 'app_id/banned/uid', 'empty', :access_token => 'app_token' do
|
35
|
+
app.banned?(user).should be_false
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
describe '#ban!' do
|
43
|
+
it 'should return true' do
|
44
|
+
mock_graph :post, 'oauth/access_token', 'app_token_response' do
|
45
|
+
mock_graph :post, 'app_id/banned', 'true', :access_token => 'app_token', :params => {
|
46
|
+
:uid => 'uid'
|
47
|
+
} do
|
48
|
+
app.ban!(user).should be_true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
describe '#unban!' do
|
55
|
+
it 'should return true' do
|
56
|
+
mock_graph :post, 'oauth/access_token', 'app_token_response' do
|
57
|
+
mock_graph :delete, 'app_id/banned/uid', 'true', :access_token => 'app_token' do
|
58
|
+
app.unban!(user).should be_true
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe FbGraph::Connections::Roles do
|
4
|
+
let(:app) do
|
5
|
+
FbGraph::Application.new('app_id', :secret => 'app_secret')
|
6
|
+
end
|
7
|
+
|
8
|
+
describe '#roles' do
|
9
|
+
it 'should return an Array of FbGraph::Role' do
|
10
|
+
mock_graph :post, 'oauth/access_token', 'app_token_response' do
|
11
|
+
mock_graph :get, 'app_id/roles', 'applications/roles/list', :access_token => 'app_token' do
|
12
|
+
roles = app.roles
|
13
|
+
roles.should be_instance_of FbGraph::Connection
|
14
|
+
roles.each do |role|
|
15
|
+
role.should be_instance_of FbGraph::Role
|
16
|
+
end
|
17
|
+
roles.first.user.should == FbGraph::User.new('579612276')
|
18
|
+
roles.first.application.== FbGraph::Application.new('210798282372757')
|
19
|
+
roles.first.role.should == 'administrators'
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
{
|
26
|
+
:admin! => 'administrators',
|
27
|
+
:developer! => 'developers',
|
28
|
+
:tester! => 'testers',
|
29
|
+
:insights_user! => 'insights users'
|
30
|
+
}.each do |method, role|
|
31
|
+
describe "##{method}" do
|
32
|
+
it 'should return true' do
|
33
|
+
mock_graph :post, 'app_id/roles', 'true', :access_token => 'admin_user_token', :params => {
|
34
|
+
:user => 'new_admin_uid',
|
35
|
+
:role => role
|
36
|
+
} do
|
37
|
+
app.send(
|
38
|
+
method,
|
39
|
+
FbGraph::User.new('new_admin_uid'),
|
40
|
+
:access_token => 'admin_user_token'
|
41
|
+
).should be_true
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
describe '#unrole!' do
|
48
|
+
it 'should return true' do
|
49
|
+
mock_graph :delete, 'app_id/roles', 'true', :access_token => 'role_owner_token', :params => {
|
50
|
+
:user => 'role_owner_uid'
|
51
|
+
} do
|
52
|
+
app.unrole!(
|
53
|
+
FbGraph::User.new('role_owner_uid'),
|
54
|
+
:access_token => 'role_owner_token'
|
55
|
+
).should be_true
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
@@ -82,6 +82,7 @@ describe FbGraph::OpenGraph::Action do
|
|
82
82
|
"name": "gem sample"
|
83
83
|
},
|
84
84
|
"data": {
|
85
|
+
"custom_field": "This is not a JSON object.",
|
85
86
|
"custom_object": {
|
86
87
|
"id": "10150362170052970",
|
87
88
|
"url": "http:\/\/samples.ogp.me\/264755040233381",
|
@@ -105,6 +106,7 @@ describe FbGraph::OpenGraph::Action do
|
|
105
106
|
subject.objects['custom_object'].should == subject.objects[:custom_object]
|
106
107
|
subject.objects[:custom_object].should be_instance_of FbGraph::OpenGraph::Object
|
107
108
|
subject.objects[:custom_object].type.should == 'fbgraphsample:custom_object'
|
109
|
+
subject.objects[:custom_field].should == 'This is not a JSON object.'
|
108
110
|
end
|
109
111
|
end
|
110
112
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
access_token=app_token
|
@@ -0,0 +1,13 @@
|
|
1
|
+
{
|
2
|
+
"data": [{
|
3
|
+
"name": "Jr Nov",
|
4
|
+
"id": "1575327134"
|
5
|
+
},
|
6
|
+
{
|
7
|
+
"name": "\u6751\u4e0a \u54f2\u592a\u90ce",
|
8
|
+
"id": "100001808012600"
|
9
|
+
}],
|
10
|
+
"paging": {
|
11
|
+
"next": "https:\/\/graph.facebook.com\/210798282372757\/banned?access_token=210798282372757|b61V35xHUgJPYQs9oUqeiQS2M04&limit=5000&offset=5000&__after_id=100001808012600"
|
12
|
+
}
|
13
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":[{"app_id":"210798282372757","user":"579612276","role":"administrators"}]}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fb_graph
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.4.
|
4
|
+
version: 2.4.16
|
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-05-
|
12
|
+
date: 2012-05-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httpclient
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: 2.2.0.2
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 2.2.0.2
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: rack-oauth2
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: 0.14.4
|
33
38
|
type: :runtime
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 0.14.4
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: tzinfo
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ! '>='
|
@@ -43,10 +53,15 @@ dependencies:
|
|
43
53
|
version: '0'
|
44
54
|
type: :runtime
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
47
62
|
- !ruby/object:Gem::Dependency
|
48
63
|
name: rake
|
49
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
50
65
|
none: false
|
51
66
|
requirements:
|
52
67
|
- - ! '>='
|
@@ -54,10 +69,15 @@ dependencies:
|
|
54
69
|
version: '0.8'
|
55
70
|
type: :development
|
56
71
|
prerelease: false
|
57
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0.8'
|
58
78
|
- !ruby/object:Gem::Dependency
|
59
79
|
name: cover_me
|
60
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
61
81
|
none: false
|
62
82
|
requirements:
|
63
83
|
- - ! '>='
|
@@ -65,10 +85,15 @@ dependencies:
|
|
65
85
|
version: 1.2.0
|
66
86
|
type: :development
|
67
87
|
prerelease: false
|
68
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 1.2.0
|
69
94
|
- !ruby/object:Gem::Dependency
|
70
95
|
name: rspec
|
71
|
-
requirement:
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
72
97
|
none: false
|
73
98
|
requirements:
|
74
99
|
- - ! '>='
|
@@ -79,10 +104,18 @@ dependencies:
|
|
79
104
|
version: 2.10.0
|
80
105
|
type: :development
|
81
106
|
prerelease: false
|
82
|
-
version_requirements:
|
107
|
+
version_requirements: !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
109
|
+
requirements:
|
110
|
+
- - ! '>='
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '2'
|
113
|
+
- - <
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: 2.10.0
|
83
116
|
- !ruby/object:Gem::Dependency
|
84
117
|
name: webmock
|
85
|
-
requirement:
|
118
|
+
requirement: !ruby/object:Gem::Requirement
|
86
119
|
none: false
|
87
120
|
requirements:
|
88
121
|
- - ! '>='
|
@@ -90,10 +123,15 @@ dependencies:
|
|
90
123
|
version: 1.6.2
|
91
124
|
type: :development
|
92
125
|
prerelease: false
|
93
|
-
version_requirements:
|
126
|
+
version_requirements: !ruby/object:Gem::Requirement
|
127
|
+
none: false
|
128
|
+
requirements:
|
129
|
+
- - ! '>='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 1.6.2
|
94
132
|
- !ruby/object:Gem::Dependency
|
95
133
|
name: actionpack
|
96
|
-
requirement:
|
134
|
+
requirement: !ruby/object:Gem::Requirement
|
97
135
|
none: false
|
98
136
|
requirements:
|
99
137
|
- - ! '>='
|
@@ -101,7 +139,12 @@ dependencies:
|
|
101
139
|
version: 3.0.6
|
102
140
|
type: :development
|
103
141
|
prerelease: false
|
104
|
-
version_requirements:
|
142
|
+
version_requirements: !ruby/object:Gem::Requirement
|
143
|
+
none: false
|
144
|
+
requirements:
|
145
|
+
- - ! '>='
|
146
|
+
- !ruby/object:Gem::Version
|
147
|
+
version: 3.0.6
|
105
148
|
description: A full-stack Facebook Graph API wrapper in Ruby.
|
106
149
|
email: nov@matake.jp
|
107
150
|
executables: []
|
@@ -164,6 +207,7 @@ files:
|
|
164
207
|
- lib/fb_graph/connections/albums.rb
|
165
208
|
- lib/fb_graph/connections/app_requests.rb
|
166
209
|
- lib/fb_graph/connections/attending.rb
|
210
|
+
- lib/fb_graph/connections/banned.rb
|
167
211
|
- lib/fb_graph/connections/blocked.rb
|
168
212
|
- lib/fb_graph/connections/books.rb
|
169
213
|
- lib/fb_graph/connections/broad_targeting_categories.rb
|
@@ -209,6 +253,7 @@ files:
|
|
209
253
|
- lib/fb_graph/connections/question_options.rb
|
210
254
|
- lib/fb_graph/connections/questions.rb
|
211
255
|
- lib/fb_graph/connections/reach_estimates.rb
|
256
|
+
- lib/fb_graph/connections/roles.rb
|
212
257
|
- lib/fb_graph/connections/scores.rb
|
213
258
|
- lib/fb_graph/connections/senders.rb
|
214
259
|
- lib/fb_graph/connections/settings.rb
|
@@ -264,6 +309,7 @@ files:
|
|
264
309
|
- lib/fb_graph/question.rb
|
265
310
|
- lib/fb_graph/question_option.rb
|
266
311
|
- lib/fb_graph/reach_estimate.rb
|
312
|
+
- lib/fb_graph/role.rb
|
267
313
|
- lib/fb_graph/score.rb
|
268
314
|
- lib/fb_graph/searchable.rb
|
269
315
|
- lib/fb_graph/searchable/result.rb
|
@@ -319,6 +365,7 @@ files:
|
|
319
365
|
- spec/fb_graph/connections/albums_spec.rb
|
320
366
|
- spec/fb_graph/connections/app_requests_spec.rb
|
321
367
|
- spec/fb_graph/connections/attending_spec.rb
|
368
|
+
- spec/fb_graph/connections/banned_spec.rb
|
322
369
|
- spec/fb_graph/connections/blocked_spec.rb
|
323
370
|
- spec/fb_graph/connections/books_spec.rb
|
324
371
|
- spec/fb_graph/connections/broad_targeting_categories_spec.rb
|
@@ -364,6 +411,7 @@ files:
|
|
364
411
|
- spec/fb_graph/connections/question_options_spec.rb
|
365
412
|
- spec/fb_graph/connections/questions_spec.rb
|
366
413
|
- spec/fb_graph/connections/reach_estimates_spec.rb
|
414
|
+
- spec/fb_graph/connections/roles_spec.rb
|
367
415
|
- spec/fb_graph/connections/scores_spec.rb
|
368
416
|
- spec/fb_graph/connections/senders_spec.rb
|
369
417
|
- spec/fb_graph/connections/settings_spec.rb
|
@@ -454,10 +502,14 @@ files:
|
|
454
502
|
- spec/mock_json/ad_keywords/buffy_search.json
|
455
503
|
- spec/mock_json/albums/photos/matake_private.json
|
456
504
|
- spec/mock_json/albums/photos/post_with_valid_access_token.json
|
505
|
+
- spec/mock_json/app_token_response.json
|
457
506
|
- spec/mock_json/applications/accounts/private.json
|
458
507
|
- spec/mock_json/applications/achievements/sample.json
|
508
|
+
- spec/mock_json/applications/banned/banned_user.json
|
509
|
+
- spec/mock_json/applications/banned/list.json
|
459
510
|
- spec/mock_json/applications/fbgraphsample.json
|
460
511
|
- spec/mock_json/applications/payments/sample.json
|
512
|
+
- spec/mock_json/applications/roles/list.json
|
461
513
|
- spec/mock_json/applications/subscriptions/fb_graph_private.json
|
462
514
|
- spec/mock_json/applications/test_users/created.json
|
463
515
|
- spec/mock_json/applications/test_users/private.json
|
@@ -653,7 +705,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
653
705
|
version: '0'
|
654
706
|
requirements: []
|
655
707
|
rubyforge_project:
|
656
|
-
rubygems_version: 1.8.
|
708
|
+
rubygems_version: 1.8.24
|
657
709
|
signing_key:
|
658
710
|
specification_version: 3
|
659
711
|
summary: A full-stack Facebook Graph API wrapper in Ruby.
|
@@ -692,6 +744,7 @@ test_files:
|
|
692
744
|
- spec/fb_graph/connections/albums_spec.rb
|
693
745
|
- spec/fb_graph/connections/app_requests_spec.rb
|
694
746
|
- spec/fb_graph/connections/attending_spec.rb
|
747
|
+
- spec/fb_graph/connections/banned_spec.rb
|
695
748
|
- spec/fb_graph/connections/blocked_spec.rb
|
696
749
|
- spec/fb_graph/connections/books_spec.rb
|
697
750
|
- spec/fb_graph/connections/broad_targeting_categories_spec.rb
|
@@ -737,6 +790,7 @@ test_files:
|
|
737
790
|
- spec/fb_graph/connections/question_options_spec.rb
|
738
791
|
- spec/fb_graph/connections/questions_spec.rb
|
739
792
|
- spec/fb_graph/connections/reach_estimates_spec.rb
|
793
|
+
- spec/fb_graph/connections/roles_spec.rb
|
740
794
|
- spec/fb_graph/connections/scores_spec.rb
|
741
795
|
- spec/fb_graph/connections/senders_spec.rb
|
742
796
|
- spec/fb_graph/connections/settings_spec.rb
|
@@ -827,10 +881,14 @@ test_files:
|
|
827
881
|
- spec/mock_json/ad_keywords/buffy_search.json
|
828
882
|
- spec/mock_json/albums/photos/matake_private.json
|
829
883
|
- spec/mock_json/albums/photos/post_with_valid_access_token.json
|
884
|
+
- spec/mock_json/app_token_response.json
|
830
885
|
- spec/mock_json/applications/accounts/private.json
|
831
886
|
- spec/mock_json/applications/achievements/sample.json
|
887
|
+
- spec/mock_json/applications/banned/banned_user.json
|
888
|
+
- spec/mock_json/applications/banned/list.json
|
832
889
|
- spec/mock_json/applications/fbgraphsample.json
|
833
890
|
- spec/mock_json/applications/payments/sample.json
|
891
|
+
- spec/mock_json/applications/roles/list.json
|
834
892
|
- spec/mock_json/applications/subscriptions/fb_graph_private.json
|
835
893
|
- spec/mock_json/applications/test_users/created.json
|
836
894
|
- spec/mock_json/applications/test_users/private.json
|