fb_graph2 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/fb_graph2.gemspec +1 -1
- data/lib/fb_graph2/app.rb +1 -1
- data/lib/fb_graph2/edge/roles.rb +21 -4
- data/lib/fb_graph2/page.rb +1 -0
- data/spec/fb_graph2/edge/roles_spec.rb +47 -0
- data/spec/mock_json/page/roles.json +19 -0
- data/spec/mock_json/page/roles_single.json +14 -0
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cb23d11f93481b305d1edc1433580a7a62e2c344
|
4
|
+
data.tar.gz: 79b9f990bbb18327c530f5af0d9c6410614c3b69
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f49d9d739f9861eacec0297a3e6336d58d81d5f5eb072cb941556863e94d5de087f65cf5a1de7ef2fbf10d2f604af0f648ab667e0b665b5aa1c568412d0f291b
|
7
|
+
data.tar.gz: a6a2092207207a04d5761d3713376b088cc7a18d2583a67541b5efa054d35d248b30ab32a47c0b7a5c04f615a8706ffd4d22644de709bd52ec31720ed43df0f7
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.1
|
data/fb_graph2.gemspec
CHANGED
@@ -5,7 +5,7 @@ Gem::Specification.new do |gem|
|
|
5
5
|
gem.email = ['nov@matake.jp']
|
6
6
|
gem.summary = %q{Facebook Graph API v2.0 Wrapper in Ruby}
|
7
7
|
gem.description = %q{Facebook Graph API v2.0 Wrapper in Ruby}
|
8
|
-
gem.homepage = 'https://github.com/fb_graph2'
|
8
|
+
gem.homepage = 'https://github.com/nov/fb_graph2'
|
9
9
|
gem.license = 'MIT'
|
10
10
|
|
11
11
|
gem.files = `git ls-files -z`.split("\x0")
|
data/lib/fb_graph2/app.rb
CHANGED
data/lib/fb_graph2/edge/roles.rb
CHANGED
@@ -1,10 +1,27 @@
|
|
1
1
|
module FbGraph2
|
2
2
|
class Edge
|
3
3
|
module Roles
|
4
|
-
|
5
|
-
roles =
|
6
|
-
|
7
|
-
|
4
|
+
module AppContext
|
5
|
+
def roles(params = {})
|
6
|
+
roles = self.edge :roles, params
|
7
|
+
roles.collect! do |role|
|
8
|
+
Struct::Role.new role
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
module PageContext
|
14
|
+
def roles(*args)
|
15
|
+
params = args.extract_options!
|
16
|
+
users = self.edge :roles, params, edge_scope: args.first
|
17
|
+
users.collect! do |user|
|
18
|
+
User.new(user[:id], user).authenticate self.access_token
|
19
|
+
end
|
20
|
+
if args.first.present?
|
21
|
+
users.first
|
22
|
+
else
|
23
|
+
users
|
24
|
+
end
|
8
25
|
end
|
9
26
|
end
|
10
27
|
end
|
data/lib/fb_graph2/page.rb
CHANGED
@@ -17,4 +17,51 @@ describe FbGraph2::Edge::Roles do
|
|
17
17
|
end
|
18
18
|
end
|
19
19
|
end
|
20
|
+
|
21
|
+
context 'included in Page' do
|
22
|
+
let(:page) { FbGraph2::Page.new('page_id').authenticate('page_token') }
|
23
|
+
|
24
|
+
describe '#roles' do
|
25
|
+
it 'should return an Array of FbGraph2::User' do
|
26
|
+
roles = mock_graph :get, 'page_id/roles', 'page/roles', access_token: 'page_token' do
|
27
|
+
page.roles
|
28
|
+
end
|
29
|
+
roles.should be_instance_of FbGraph2::Edge
|
30
|
+
roles.should_not be_blank
|
31
|
+
roles.each do |role|
|
32
|
+
role.should be_instance_of FbGraph2::User
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context 'when blank' do
|
37
|
+
it 'should return a blank Array' do
|
38
|
+
roles = mock_graph :get, 'page_id/roles', 'blank_collection', access_token: 'page_token' do
|
39
|
+
page.roles
|
40
|
+
end
|
41
|
+
roles.should be_instance_of FbGraph2::Edge
|
42
|
+
roles.should be_blank
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
context 'when user context specified' do
|
47
|
+
let(:user) { FbGraph2::User.new('user_id') }
|
48
|
+
|
49
|
+
it 'should return a FbGraph2::User' do
|
50
|
+
role = mock_graph :get, 'page_id/roles/user_id', 'page/roles_single', access_token: 'page_token' do
|
51
|
+
page.roles user
|
52
|
+
end
|
53
|
+
role.should be_instance_of FbGraph2::User
|
54
|
+
end
|
55
|
+
|
56
|
+
context 'when blank' do
|
57
|
+
it 'should return nil' do
|
58
|
+
role = mock_graph :get, 'page_id/roles/user_id', 'blank_collection', access_token: 'page_token' do
|
59
|
+
page.roles user
|
60
|
+
end
|
61
|
+
role.should be_nil
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
20
67
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
{
|
2
|
+
"data": [{
|
3
|
+
"id": "10101078259835569",
|
4
|
+
"name": "Micah Wedemeyer",
|
5
|
+
"role": "Admin",
|
6
|
+
"perms": ["ADMINISTER", "EDIT_PROFILE", "CREATE_CONTENT", "MODERATE_CONTENT", "CREATE_ADS", "BASIC_ADMIN"]
|
7
|
+
}, {
|
8
|
+
"id": "579612276",
|
9
|
+
"name": "Nov Matake",
|
10
|
+
"role": "Admin",
|
11
|
+
"perms": ["ADMINISTER", "EDIT_PROFILE", "CREATE_CONTENT", "MODERATE_CONTENT", "CREATE_ADS", "BASIC_ADMIN"]
|
12
|
+
}],
|
13
|
+
"paging": {
|
14
|
+
"cursors": {
|
15
|
+
"before": "MTAxMDEwNzgyNTk4MzU1Njk=",
|
16
|
+
"after": "NTc5NjEyMjc2"
|
17
|
+
}
|
18
|
+
}
|
19
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
{
|
2
|
+
"data": [{
|
3
|
+
"id": "579612276",
|
4
|
+
"name": "Nov Matake",
|
5
|
+
"role": "Admin",
|
6
|
+
"perms": ["ADMINISTER", "EDIT_PROFILE", "CREATE_CONTENT", "MODERATE_CONTENT", "CREATE_ADS", "BASIC_ADMIN"]
|
7
|
+
}],
|
8
|
+
"paging": {
|
9
|
+
"cursors": {
|
10
|
+
"before": "MTAxMDEwNzgyNTk4MzU1Njk=",
|
11
|
+
"after": "NTc5NjEyMjc2"
|
12
|
+
}
|
13
|
+
}
|
14
|
+
}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fb_graph2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- nov matake
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-11-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httpclient
|
@@ -367,6 +367,8 @@ files:
|
|
367
367
|
- spec/mock_json/page/milestones.json
|
368
368
|
- spec/mock_json/page/offers.json
|
369
369
|
- spec/mock_json/page/promotable_posts.json
|
370
|
+
- spec/mock_json/page/roles.json
|
371
|
+
- spec/mock_json/page/roles_single.json
|
370
372
|
- spec/mock_json/page/settings.json
|
371
373
|
- spec/mock_json/page/with_optional_fields.json
|
372
374
|
- spec/mock_json/post/comments.json
|
@@ -413,7 +415,7 @@ files:
|
|
413
415
|
- spec/mock_json/user/videos.json
|
414
416
|
- spec/spec_helper.rb
|
415
417
|
- spec/spec_helper/mock_graph.rb
|
416
|
-
homepage: https://github.com/fb_graph2
|
418
|
+
homepage: https://github.com/nov/fb_graph2
|
417
419
|
licenses:
|
418
420
|
- MIT
|
419
421
|
metadata: {}
|