fb_graph 2.4.13 → 2.4.14

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -56,14 +56,14 @@ GEM
56
56
  rack-test (0.6.1)
57
57
  rack (>= 1.0)
58
58
  rake (0.9.2.2)
59
- rspec (2.10.0)
60
- rspec-core (~> 2.10.0)
61
- rspec-expectations (~> 2.10.0)
62
- rspec-mocks (~> 2.10.0)
63
- rspec-core (2.10.0)
64
- rspec-expectations (2.10.0)
59
+ rspec (2.9.0)
60
+ rspec-core (~> 2.9.0)
61
+ rspec-expectations (~> 2.9.0)
62
+ rspec-mocks (~> 2.9.0)
63
+ rspec-core (2.9.0)
64
+ rspec-expectations (2.9.1)
65
65
  diff-lcs (~> 1.1.3)
66
- rspec-mocks (2.10.1)
66
+ rspec-mocks (2.9.0)
67
67
  sprockets (2.1.3)
68
68
  hike (~> 1.2)
69
69
  rack (~> 1.0)
@@ -84,5 +84,5 @@ DEPENDENCIES
84
84
  fb_graph!
85
85
  jruby-openssl (>= 0.7)
86
86
  rake (>= 0.8)
87
- rspec (>= 2)
87
+ rspec (>= 2, < 2.10.0)
88
88
  webmock (>= 1.6.2)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.4.13
1
+ 2.4.14
data/fb_graph.gemspec CHANGED
@@ -21,7 +21,7 @@ Gem::Specification.new do |s|
21
21
  else
22
22
  s.add_development_dependency "rcov", ">= 0.9"
23
23
  end
24
- s.add_development_dependency "rspec", ">= 2"
24
+ s.add_development_dependency "rspec", ">= 2", "< 2.10.0"
25
25
  s.add_development_dependency "webmock", ">= 1.6.2"
26
26
  s.add_development_dependency "actionpack", ">= 3.0.6"
27
27
  end
@@ -2,23 +2,11 @@ module FbGraph
2
2
  class Application < Node
3
3
  include Connections::Accounts
4
4
  include Connections::Achievements
5
- include Connections::Albums
6
- include Connections::Events
7
- include Connections::Feed
8
5
  include Connections::Insights
9
- include Connections::Links
10
- include Connections::Notes
11
6
  include Connections::Payments
12
- include Connections::Photos
13
7
  include Connections::Picture
14
- include Connections::Posts
15
- include Connections::Reviews
16
- include Connections::Statuses
17
8
  include Connections::Subscriptions
18
- include Connections::Tagged
19
9
  include Connections::TestUsers
20
- # TODO
21
- # include Connections::Translations
22
10
  include Connections::Videos
23
11
  include OpenGraph::ApplicationContext
24
12
 
@@ -81,13 +69,14 @@ module FbGraph
81
69
  @@attributes.each do |key|
82
70
  # NOTE:
83
71
  # For some reason, Graph API returns daily_active_users, weekly_active_users, monthly_active_users as JSON string.
84
- value = if [:daily_active_users, :weekly_active_users, :monthly_active_users].include?(key)
72
+ value = case key
73
+ when :daily_active_users, :weekly_active_users, :monthly_active_users
85
74
  attributes[key].to_i
86
- # Boolean fields may be returned as 1 for true or 0 for false
87
- elsif [:auth_referral_enabled, :canvas_fluid_height, :canvas_fluid_width, :social_discovery]
88
- if attributes[key] == 1
75
+ when :auth_referral_enabled, :canvas_fluid_height, :canvas_fluid_width, :social_discovery
76
+ case attributes[key]
77
+ when 1
89
78
  true
90
- elsif attributes[key] == 0
79
+ when 0
91
80
  false
92
81
  else
93
82
  attributes[key]
@@ -0,0 +1,14 @@
1
+ module FbGraph
2
+ module Connections
3
+ module Conversations
4
+ def conversations(options = {})
5
+ conversations = self.connection :conversations, options
6
+ conversations.map! do |conversation|
7
+ Thread.new conversation[:id], conversation.merge(
8
+ :access_token => options[:access_token] || self.access_token
9
+ )
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -9,6 +9,14 @@ module FbGraph
9
9
  )
10
10
  end
11
11
  end
12
+
13
+ def message!(message, options = {})
14
+ options[:message] = message
15
+ message = post options.merge(:connection => :messages)
16
+ Message.new message[:id], message.merge(options).merge(
17
+ :access_token => options[:access_token] || self.access_token
18
+ )
19
+ end
12
20
  end
13
21
  end
14
22
  end
data/lib/fb_graph/page.rb CHANGED
@@ -4,6 +4,7 @@ module FbGraph
4
4
  include Connections::Albums
5
5
  include Connections::Blocked
6
6
  include Connections::Checkins
7
+ include Connections::Conversations
7
8
  include Connections::Events
8
9
  include Connections::Feed
9
10
  include Connections::Groups
data/lib/fb_graph.rb CHANGED
@@ -117,7 +117,6 @@ require 'fb_graph/post'
117
117
  require 'fb_graph/property'
118
118
  require 'fb_graph/question'
119
119
  require 'fb_graph/question_option'
120
- require 'fb_graph/review'
121
120
  require 'fb_graph/score'
122
121
  require 'fb_graph/status'
123
122
  require 'fb_graph/tab'
@@ -0,0 +1,19 @@
1
+ require 'spec_helper'
2
+
3
+ describe FbGraph::Connections::Conversations do
4
+ describe '#conversations' do
5
+ let(:page) do
6
+ FbGraph::Page.new('page_id', :access_token => 'page_token')
7
+ end
8
+
9
+ it 'should return an Array of FbGraph::Thread' do
10
+ mock_graph :get, 'page_id/conversations', 'pages/conversations/list', :access_token => 'page_token' do
11
+ conversations = page.conversations
12
+ conversations.should be_instance_of FbGraph::Connection
13
+ conversations.each do |conversation|
14
+ conversation.should be_instance_of FbGraph::Thread
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -1,41 +1,57 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe FbGraph::Connections::Messages, '#messages' do
4
- it 'should return threads as FbGraph::Message' do
5
- mock_graph :get, '12345/messages', 'thread/messages/private', :params => {:no_cache => 'true'}, :access_token => 'access_token' do
6
- messages = FbGraph::Thread.new(12345, :access_token => 'access_token').messages(:no_cache => true)
7
- messages.each do |message|
8
- message.should be_instance_of(FbGraph::Message)
3
+ describe FbGraph::Connections::Messages do
4
+ describe '#messages' do
5
+ it 'should return threads as FbGraph::Message' do
6
+ mock_graph :get, '12345/messages', 'thread/messages/private', :params => {:no_cache => 'true'}, :access_token => 'access_token' do
7
+ messages = FbGraph::Thread.new(12345, :access_token => 'access_token').messages(:no_cache => true)
8
+ messages.each do |message|
9
+ message.should be_instance_of(FbGraph::Message)
10
+ end
9
11
  end
10
12
  end
11
- end
12
13
 
13
- describe 'cached messages' do
14
- context 'when cached' do
15
- let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token', :messages => {}) }
14
+ describe 'cached messages' do
15
+ context 'when cached' do
16
+ let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token', :messages => {}) }
17
+
18
+ it 'should use cache' do
19
+ lambda do
20
+ thread.messages
21
+ end.should_not request_to '12345/messages?access_token=access_token'
22
+ end
16
23
 
17
- it 'should use cache' do
18
- lambda do
19
- thread.messages
20
- end.should_not request_to '12345/messages?access_token=access_token'
24
+ context 'when options are specified' do
25
+ it 'should not use cache' do
26
+ lambda do
27
+ thread.messages(:no_cache => true)
28
+ end.should request_to '12345/messages?access_token=access_token&no_cache=true'
29
+ end
30
+ end
21
31
  end
22
32
 
23
- context 'when options are specified' do
33
+ context 'otherwise' do
34
+ let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token') }
35
+
24
36
  it 'should not use cache' do
25
37
  lambda do
26
- thread.messages(:no_cache => true)
27
- end.should request_to '12345/messages?access_token=access_token&no_cache=true'
38
+ thread.messages
39
+ end.should request_to '12345/messages?access_token=access_token'
28
40
  end
29
41
  end
30
42
  end
43
+ end
31
44
 
32
- context 'otherwise' do
33
- let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token') }
45
+ describe '#message!' do
46
+ let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token') }
34
47
 
35
- it 'should not use cache' do
36
- lambda do
37
- thread.messages
38
- end.should request_to '12345/messages?access_token=access_token'
48
+ it 'should return FbGraph::Message' do
49
+ mock_graph :post, '12345/messages', 'thread/messages/created', :access_token => 'access_token', :params => {
50
+ :message => 'Hello'
51
+ } do
52
+ message = thread.message! 'Hello'
53
+ message.should be_instance_of FbGraph::Message
54
+ message.message.should == 'Hello'
39
55
  end
40
56
  end
41
57
  end
@@ -211,26 +211,6 @@ describe FbGraph::Post, '#to' do
211
211
  it { should be_instance_of FbGraph::Event }
212
212
  end
213
213
 
214
- context 'when include Application' do
215
- context 'when fetched as Application#feed' do
216
- let :post do
217
- mock_graph :get, 'app/feed', 'applications/feed/public' do
218
- FbGraph::Application.new('app').feed.first
219
- end
220
- end
221
- it { should be_instance_of FbGraph::Application }
222
- end
223
-
224
- context 'otherwize' do # no way to detect this case..
225
- let :post do
226
- mock_graph :get, 'to_application', 'posts/to_application' do
227
- FbGraph::Post.fetch('to_application')
228
- end
229
- end
230
- it { should be_instance_of FbGraph::User }
231
- end
232
- end
233
-
234
214
  context 'when include Group' do
235
215
  let :post do
236
216
  mock_graph :get, 'to_group', 'posts/to_group', :access_token => 'access_token' do
@@ -0,0 +1,83 @@
1
+ {
2
+ "data": [{
3
+ "id": "t_id.433490033330462",
4
+ "snippet": "hey hey",
5
+ "updated_time": "2012-05-09T09:25:00+0000",
6
+ "message_count": 1,
7
+ "tags": {
8
+ "data": [{
9
+ "name": "inbox"
10
+ },
11
+ {
12
+ "name": "read"
13
+ },
14
+ {
15
+ "name": "seen"
16
+ },
17
+ {
18
+ "name": "source:web"
19
+ }]
20
+ },
21
+ "participants": {
22
+ "data": [{
23
+ "name": "Nov Matake",
24
+ "email": "579612276\u0040facebook.com",
25
+ "id": "579612276"
26
+ },
27
+ {
28
+ "name": "FbGraph",
29
+ "email": "117513961602338\u0040facebook.com",
30
+ "id": "117513961602338"
31
+ }]
32
+ },
33
+ "senders": {
34
+ "data": [{
35
+ "name": "Nov Matake",
36
+ "email": "579612276\u0040facebook.com",
37
+ "id": "579612276"
38
+ }]
39
+ },
40
+ "can_reply": true,
41
+ "is_subscribed": true,
42
+ "link": "http:\/\/www.facebook.com\/messages\/?action=read&tid=id.433490033330462",
43
+ "messages": {
44
+ "data": [{
45
+ "id": "m_id.433490033330462",
46
+ "created_time": "2012-05-09T09:25:00+0000",
47
+ "tags": {
48
+ "data": [{
49
+ "name": "inbox"
50
+ },
51
+ {
52
+ "name": "read"
53
+ },
54
+ {
55
+ "name": "source:web"
56
+ }]
57
+ },
58
+ "from": {
59
+ "name": "Nov Matake",
60
+ "email": "matake\u0040facebook.com",
61
+ "id": "579612276"
62
+ },
63
+ "to": {
64
+ "data": [{
65
+ "name": "FbGraph",
66
+ "email": "117513961602338\u0040facebook.com",
67
+ "id": "117513961602338"
68
+ },
69
+ {
70
+ "name": "Nov Matake",
71
+ "email": "matake\u0040facebook.com",
72
+ "id": "579612276"
73
+ }]
74
+ },
75
+ "message": "hey hey"
76
+ }],
77
+ "paging": {
78
+ "previous": "https:\/\/graph.facebook.com\/t_id.433490033330462\/messages?access_token=AAAB6ATdqrnIBAJZB0RsPZCpLXqmVghMZCPcckNc1qbBSZCjUT2uUcDAUThZCOoQ7c1ucUZBMniALinKb0t0XtGY4eOefVRrlI5vPGK0eWJUcU8yAEjjXI9&limit=25&since=1336555500&__paging_token=m_id.433490033330462&__previous=1",
79
+ "next": "https:\/\/graph.facebook.com\/t_id.433490033330462\/messages?access_token=AAAB6ATdqrnIBAJZB0RsPZCpLXqmVghMZCPcckNc1qbBSZCjUT2uUcDAUThZCOoQ7c1ucUZBMniALinKb0t0XtGY4eOefVRrlI5vPGK0eWJUcU8yAEjjXI9&limit=25&until=1336555500&__paging_token=m_id.433490033330462"
80
+ }
81
+ }
82
+ }]
83
+ }
@@ -0,0 +1 @@
1
+ {"id":"m_id.383923968318039"}
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.13
4
+ version: 2.4.14
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-08 00:00:00.000000000 Z
12
+ date: 2012-05-09 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httpclient
16
- requirement: &70142973656020 !ruby/object:Gem::Requirement
16
+ requirement: &70290371666620 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.2.0.2
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70142973656020
24
+ version_requirements: *70290371666620
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rack-oauth2
27
- requirement: &70142973655500 !ruby/object:Gem::Requirement
27
+ requirement: &70290371666120 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.14.4
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70142973655500
35
+ version_requirements: *70290371666120
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: tzinfo
38
- requirement: &70142973655120 !ruby/object:Gem::Requirement
38
+ requirement: &70290371665740 !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: :runtime
45
45
  prerelease: false
46
- version_requirements: *70142973655120
46
+ version_requirements: *70290371665740
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &70142973654500 !ruby/object:Gem::Requirement
49
+ requirement: &70290371665200 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0.8'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70142973654500
57
+ version_requirements: *70290371665200
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: cover_me
60
- requirement: &70142973653660 !ruby/object:Gem::Requirement
60
+ requirement: &70290371664640 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,21 +65,24 @@ dependencies:
65
65
  version: 1.2.0
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70142973653660
68
+ version_requirements: *70290371664640
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
- requirement: &70142973653060 !ruby/object:Gem::Requirement
71
+ requirement: &70290371664140 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
75
75
  - !ruby/object:Gem::Version
76
76
  version: '2'
77
+ - - <
78
+ - !ruby/object:Gem::Version
79
+ version: 2.10.0
77
80
  type: :development
78
81
  prerelease: false
79
- version_requirements: *70142973653060
82
+ version_requirements: *70290371664140
80
83
  - !ruby/object:Gem::Dependency
81
84
  name: webmock
82
- requirement: &70142973652580 !ruby/object:Gem::Requirement
85
+ requirement: &70290371663260 !ruby/object:Gem::Requirement
83
86
  none: false
84
87
  requirements:
85
88
  - - ! '>='
@@ -87,10 +90,10 @@ dependencies:
87
90
  version: 1.6.2
88
91
  type: :development
89
92
  prerelease: false
90
- version_requirements: *70142973652580
93
+ version_requirements: *70290371663260
91
94
  - !ruby/object:Gem::Dependency
92
95
  name: actionpack
93
- requirement: &70142973652100 !ruby/object:Gem::Requirement
96
+ requirement: &70290371656620 !ruby/object:Gem::Requirement
94
97
  none: false
95
98
  requirements:
96
99
  - - ! '>='
@@ -98,7 +101,7 @@ dependencies:
98
101
  version: 3.0.6
99
102
  type: :development
100
103
  prerelease: false
101
- version_requirements: *70142973652100
104
+ version_requirements: *70290371656620
102
105
  description: A full-stack Facebook Graph API wrapper in Ruby.
103
106
  email: nov@matake.jp
104
107
  executables: []
@@ -166,6 +169,7 @@ files:
166
169
  - lib/fb_graph/connections/broad_targeting_categories.rb
167
170
  - lib/fb_graph/connections/checkins.rb
168
171
  - lib/fb_graph/connections/comments.rb
172
+ - lib/fb_graph/connections/conversations.rb
169
173
  - lib/fb_graph/connections/declined.rb
170
174
  - lib/fb_graph/connections/docs.rb
171
175
  - lib/fb_graph/connections/events.rb
@@ -205,7 +209,6 @@ files:
205
209
  - lib/fb_graph/connections/question_options.rb
206
210
  - lib/fb_graph/connections/questions.rb
207
211
  - lib/fb_graph/connections/reach_estimates.rb
208
- - lib/fb_graph/connections/reviews.rb
209
212
  - lib/fb_graph/connections/scores.rb
210
213
  - lib/fb_graph/connections/senders.rb
211
214
  - lib/fb_graph/connections/settings.rb
@@ -261,7 +264,6 @@ files:
261
264
  - lib/fb_graph/question.rb
262
265
  - lib/fb_graph/question_option.rb
263
266
  - lib/fb_graph/reach_estimate.rb
264
- - lib/fb_graph/review.rb
265
267
  - lib/fb_graph/score.rb
266
268
  - lib/fb_graph/searchable.rb
267
269
  - lib/fb_graph/searchable/result.rb
@@ -322,6 +324,7 @@ files:
322
324
  - spec/fb_graph/connections/broad_targeting_categories_spec.rb
323
325
  - spec/fb_graph/connections/checkins_spec.rb
324
326
  - spec/fb_graph/connections/comments_spec.rb
327
+ - spec/fb_graph/connections/conversations_spec.rb
325
328
  - spec/fb_graph/connections/declined_spec.rb
326
329
  - spec/fb_graph/connections/docs_spec.rb
327
330
  - spec/fb_graph/connections/events_spec.rb
@@ -361,7 +364,6 @@ files:
361
364
  - spec/fb_graph/connections/question_options_spec.rb
362
365
  - spec/fb_graph/connections/questions_spec.rb
363
366
  - spec/fb_graph/connections/reach_estimates_spec.rb
364
- - spec/fb_graph/connections/reviews_spec.rb
365
367
  - spec/fb_graph/connections/scores_spec.rb
366
368
  - spec/fb_graph/connections/senders_spec.rb
367
369
  - spec/fb_graph/connections/settings_spec.rb
@@ -455,9 +457,7 @@ files:
455
457
  - spec/mock_json/applications/accounts/private.json
456
458
  - spec/mock_json/applications/achievements/sample.json
457
459
  - spec/mock_json/applications/fbgraphsample.json
458
- - spec/mock_json/applications/feed/public.json
459
460
  - spec/mock_json/applications/payments/sample.json
460
- - spec/mock_json/applications/reviews/public.json
461
461
  - spec/mock_json/applications/subscriptions/fb_graph_private.json
462
462
  - spec/mock_json/applications/test_users/created.json
463
463
  - spec/mock_json/applications/test_users/private.json
@@ -494,6 +494,7 @@ files:
494
494
  - spec/mock_json/pages/categories/product.json
495
495
  - spec/mock_json/pages/checkins/gowalla_private.json
496
496
  - spec/mock_json/pages/checkins/gowalla_public.json
497
+ - spec/mock_json/pages/conversations/list.json
497
498
  - spec/mock_json/pages/insights/FbGraph_private.json
498
499
  - spec/mock_json/pages/insights/FbGraph_public.json
499
500
  - spec/mock_json/pages/insights/page_like_adds/FbGraph_private.json
@@ -538,6 +539,7 @@ files:
538
539
  - spec/mock_json/questions/options/votes/matake_private.json
539
540
  - spec/mock_json/statuses/with_likes.json
540
541
  - spec/mock_json/thread/former_participants/private.json
542
+ - spec/mock_json/thread/messages/created.json
541
543
  - spec/mock_json/thread/messages/private.json
542
544
  - spec/mock_json/thread/participants/private.json
543
545
  - spec/mock_json/thread/senders/private.json
@@ -646,7 +648,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
646
648
  version: '0'
647
649
  requirements: []
648
650
  rubyforge_project:
649
- rubygems_version: 1.8.17
651
+ rubygems_version: 1.8.12
650
652
  signing_key:
651
653
  specification_version: 3
652
654
  summary: A full-stack Facebook Graph API wrapper in Ruby.
@@ -690,6 +692,7 @@ test_files:
690
692
  - spec/fb_graph/connections/broad_targeting_categories_spec.rb
691
693
  - spec/fb_graph/connections/checkins_spec.rb
692
694
  - spec/fb_graph/connections/comments_spec.rb
695
+ - spec/fb_graph/connections/conversations_spec.rb
693
696
  - spec/fb_graph/connections/declined_spec.rb
694
697
  - spec/fb_graph/connections/docs_spec.rb
695
698
  - spec/fb_graph/connections/events_spec.rb
@@ -729,7 +732,6 @@ test_files:
729
732
  - spec/fb_graph/connections/question_options_spec.rb
730
733
  - spec/fb_graph/connections/questions_spec.rb
731
734
  - spec/fb_graph/connections/reach_estimates_spec.rb
732
- - spec/fb_graph/connections/reviews_spec.rb
733
735
  - spec/fb_graph/connections/scores_spec.rb
734
736
  - spec/fb_graph/connections/senders_spec.rb
735
737
  - spec/fb_graph/connections/settings_spec.rb
@@ -823,9 +825,7 @@ test_files:
823
825
  - spec/mock_json/applications/accounts/private.json
824
826
  - spec/mock_json/applications/achievements/sample.json
825
827
  - spec/mock_json/applications/fbgraphsample.json
826
- - spec/mock_json/applications/feed/public.json
827
828
  - spec/mock_json/applications/payments/sample.json
828
- - spec/mock_json/applications/reviews/public.json
829
829
  - spec/mock_json/applications/subscriptions/fb_graph_private.json
830
830
  - spec/mock_json/applications/test_users/created.json
831
831
  - spec/mock_json/applications/test_users/private.json
@@ -862,6 +862,7 @@ test_files:
862
862
  - spec/mock_json/pages/categories/product.json
863
863
  - spec/mock_json/pages/checkins/gowalla_private.json
864
864
  - spec/mock_json/pages/checkins/gowalla_public.json
865
+ - spec/mock_json/pages/conversations/list.json
865
866
  - spec/mock_json/pages/insights/FbGraph_private.json
866
867
  - spec/mock_json/pages/insights/FbGraph_public.json
867
868
  - spec/mock_json/pages/insights/page_like_adds/FbGraph_private.json
@@ -906,6 +907,7 @@ test_files:
906
907
  - spec/mock_json/questions/options/votes/matake_private.json
907
908
  - spec/mock_json/statuses/with_likes.json
908
909
  - spec/mock_json/thread/former_participants/private.json
910
+ - spec/mock_json/thread/messages/created.json
909
911
  - spec/mock_json/thread/messages/private.json
910
912
  - spec/mock_json/thread/participants/private.json
911
913
  - spec/mock_json/thread/senders/private.json
@@ -1,14 +0,0 @@
1
- module FbGraph
2
- module Connections
3
- module Reviews
4
- def reviews(options = {})
5
- reviews = self.connection :reviews, options
6
- reviews.map! do |review|
7
- Review.new review[:id], review.merge(
8
- :access_token => options[:access_token] || self.access_token
9
- )
10
- end
11
- end
12
- end
13
- end
14
- end
@@ -1,20 +0,0 @@
1
- module FbGraph
2
- class Review < Node
3
- attr_accessor :from, :to, :message, :rating, :created_time
4
-
5
- def initialize(identifier, attributes = {})
6
- super
7
- @from = if attributes[:from]
8
- User.new(attributes[:from][:id], attributes[:from])
9
- end
10
- @to = if attributes[:to]
11
- Application.new(attributes[:to][:id], attributes[:to])
12
- end
13
- @message = attributes[:message]
14
- @rating = attributes[:rating]
15
- @created_time = if attributes[:created_time]
16
- Time.parse(attributes[:created_time]).utc
17
- end
18
- end
19
- end
20
- end
@@ -1,14 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe FbGraph::Connections::Reviews do
4
- describe '#reviews' do
5
- it 'should return reviews as FbGraph::Review' do
6
- mock_graph :get, 'my_app/reviews', 'applications/reviews/public' do
7
- reviews = FbGraph::Application.new('my_app').reviews
8
- reviews.each do |review|
9
- review.should be_instance_of(FbGraph::Review)
10
- end
11
- end
12
- end
13
- end
14
- end
@@ -1,34 +0,0 @@
1
- {
2
- "data": [{
3
- "id": "134145643294322_191067404268812",
4
- "from": {
5
- "name": "Jr Nov",
6
- "id": "1575327134"
7
- },
8
- "to": {
9
- "data": [{
10
- "name": "gem sample",
11
- "id": "134145643294322"
12
- }]
13
- },
14
- "message": "test test",
15
- "type": "status",
16
- "created_time": "2011-03-31T23:21:11+0000",
17
- "updated_time": "2011-03-31T23:21:11+0000"
18
- },
19
- {
20
- "id": "134145643294322_191067017602184",
21
- "from": {
22
- "name": "gem sample",
23
- "id": "134145643294322"
24
- },
25
- "message": "test test",
26
- "type": "status",
27
- "created_time": "2011-03-31T23:18:46+0000",
28
- "updated_time": "2011-03-31T23:18:46+0000"
29
- }],
30
- "paging": {
31
- "previous": "https:\/\/graph.facebook.com\/134145643294322\/feed?limit=25&since=1301613671",
32
- "next": "https:\/\/graph.facebook.com\/134145643294322\/feed?limit=25&until=1301613526"
33
- }
34
- }
@@ -1,354 +0,0 @@
1
- {
2
- "data": [
3
- {
4
- "id": "10150214315746960",
5
- "from": {
6
- "name": "Jima Montirola",
7
- "id": "100001898964328"
8
- },
9
- "to": {
10
- "name": "Graffiti",
11
- "id": "2439131959"
12
- },
13
- "rating": 4,
14
- "message": "CLICK HERE TO WATCH FREE MOVIE AND TV SHOW\nhttp://zip.ms/free-movie-and-tv-show",
15
- "created_time": "2011-06-21T07:57:17+0000"
16
- },
17
- {
18
- "id": "10150214141536960",
19
- "from": {
20
- "name": "James Roper",
21
- "id": "100000222395872"
22
- },
23
- "to": {
24
- "name": "Graffiti",
25
- "id": "2439131959"
26
- },
27
- "rating": 5,
28
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcredistfree.blogspot.com/",
29
- "created_time": "2011-06-21T03:08:57+0000"
30
- },
31
- {
32
- "id": "10150213751621960",
33
- "from": {
34
- "name": "Gina Leonard",
35
- "id": "530120601"
36
- },
37
- "to": {
38
- "name": "Graffiti",
39
- "id": "2439131959"
40
- },
41
- "rating": 5,
42
- "message": "Get your FREE 450 FACEBOOK CREDITS! NO SCAM NO surveys NO waste of time no task its totally FREE this promo is available for the first 1000 persons only... CHECK IT OUT ENJOY..i got mine and it works get yours here http://free450promo.blogspot.com/",
43
- "created_time": "2011-06-20T17:58:08+0000"
44
- },
45
- {
46
- "id": "10150213530926960",
47
- "from": {
48
- "name": "Gabriel Riveros",
49
- "id": "100002543692700"
50
- },
51
- "to": {
52
- "name": "Graffiti",
53
- "id": "2439131959"
54
- },
55
- "rating": 5,
56
- "created_time": "2011-06-20T12:39:38+0000"
57
- },
58
- {
59
- "id": "10150213437416960",
60
- "from": {
61
- "name": "Samira Thyrian",
62
- "id": "100002512516810"
63
- },
64
- "to": {
65
- "name": "Graffiti",
66
- "id": "2439131959"
67
- },
68
- "rating": 3,
69
- "message": "\"star\"",
70
- "created_time": "2011-06-20T09:20:34+0000"
71
- },
72
- {
73
- "id": "10150213372266960",
74
- "from": {
75
- "name": "Gayle Saxton",
76
- "id": "1612839457"
77
- },
78
- "to": {
79
- "name": "Graffiti",
80
- "id": "2439131959"
81
- },
82
- "rating": 4,
83
- "message": "Get 5000 Credits For Any Game Free\n5000fbcreditfreee.blogspot.com\nJust Avail the Offer Now Before It Ends !",
84
- "created_time": "2011-06-20T06:25:37+0000"
85
- },
86
- {
87
- "id": "10150213356621960",
88
- "from": {
89
- "name": "Josh Gogus",
90
- "id": "1607634157"
91
- },
92
- "to": {
93
- "name": "Graffiti",
94
- "id": "2439131959"
95
- },
96
- "rating": 5,
97
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
98
- "created_time": "2011-06-20T05:42:42+0000"
99
- },
100
- {
101
- "id": "10150213319171960",
102
- "from": {
103
- "name": "Bruce Chan",
104
- "id": "1798875631"
105
- },
106
- "to": {
107
- "name": "Graffiti",
108
- "id": "2439131959"
109
- },
110
- "rating": 2,
111
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\n http://5000fbcreditfreee.blogspot.com/\n\n ",
112
- "created_time": "2011-06-20T04:23:01+0000"
113
- },
114
- {
115
- "id": "10150213313911960",
116
- "from": {
117
- "name": "Mark Hooks",
118
- "id": "100002072782022"
119
- },
120
- "to": {
121
- "name": "Graffiti",
122
- "id": "2439131959"
123
- },
124
- "rating": 4,
125
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
126
- "created_time": "2011-06-20T04:14:45+0000"
127
- },
128
- {
129
- "id": "10150213274761960",
130
- "from": {
131
- "name": "James Pepper",
132
- "id": "1117338698"
133
- },
134
- "to": {
135
- "name": "Graffiti",
136
- "id": "2439131959"
137
- },
138
- "rating": 1,
139
- "created_time": "2011-06-20T03:15:20+0000"
140
- },
141
- {
142
- "id": "10150213132951960",
143
- "from": {
144
- "name": "Julien Annino",
145
- "id": "1106280850"
146
- },
147
- "to": {
148
- "name": "Graffiti",
149
- "id": "2439131959"
150
- },
151
- "rating": 5,
152
- "message": "Facebook is offering 2000 FREE Credits for Limited Time Period. This promo is available for the first 500 persons only. Just Avail the Offer Now Before It Ends ! http://2000fbcreditfree.blogspot.com/",
153
- "created_time": "2011-06-19T23:24:17+0000"
154
- },
155
- {
156
- "id": "10150213129121960",
157
- "from": {
158
- "name": "Jimmy Manning Jr",
159
- "id": "100000426470491"
160
- },
161
- "to": {
162
- "name": "Graffiti",
163
- "id": "2439131959"
164
- },
165
- "rating": 3,
166
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/\n\n",
167
- "created_time": "2011-06-19T23:17:25+0000"
168
- },
169
- {
170
- "id": "10150212853286960",
171
- "from": {
172
- "name": "Beni Banbahji",
173
- "id": "1509458591"
174
- },
175
- "to": {
176
- "name": "Graffiti",
177
- "id": "2439131959"
178
- },
179
- "rating": 5,
180
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
181
- "created_time": "2011-06-19T17:24:35+0000"
182
- },
183
- {
184
- "id": "10150212846076960",
185
- "from": {
186
- "name": "Sue Skrdland Sippel",
187
- "id": "100000211450113"
188
- },
189
- "to": {
190
- "name": "Graffiti",
191
- "id": "2439131959"
192
- },
193
- "rating": 1,
194
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
195
- "created_time": "2011-06-19T17:14:49+0000"
196
- },
197
- {
198
- "id": "10150212830456960",
199
- "from": {
200
- "name": "John Franklin Henderson",
201
- "id": "1555283686"
202
- },
203
- "to": {
204
- "name": "Graffiti",
205
- "id": "2439131959"
206
- },
207
- "rating": 2,
208
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
209
- "created_time": "2011-06-19T16:50:20+0000"
210
- },
211
- {
212
- "id": "10150212742416960",
213
- "from": {
214
- "name": "Tiro Cooper",
215
- "id": "100002331330685"
216
- },
217
- "to": {
218
- "name": "Graffiti",
219
- "id": "2439131959"
220
- },
221
- "rating": 4,
222
- "message": "Get your free 450 Facebook credits...NO surveys NO waste of time no task its totaly free the first 5000 this promo is available for the first 1000 persons only... CHECK IT OUT & ENJOY... i got mine and it works get yours here http://realfreefacebookcredits.blogspot.com/ \n",
223
- "created_time": "2011-06-19T15:13:21+0000"
224
- },
225
- {
226
- "id": "10150212650116960",
227
- "from": {
228
- "name": "BJay CashAlimoot",
229
- "id": "1050120403"
230
- },
231
- "to": {
232
- "name": "Graffiti",
233
- "id": "2439131959"
234
- },
235
- "rating": 5,
236
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
237
- "created_time": "2011-06-19T12:37:17+0000"
238
- },
239
- {
240
- "id": "10150212636796960",
241
- "from": {
242
- "name": "Chanda Anderson",
243
- "id": "100000129021505"
244
- },
245
- "to": {
246
- "name": "Graffiti",
247
- "id": "2439131959"
248
- },
249
- "rating": 5,
250
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/\n",
251
- "created_time": "2011-06-19T12:12:26+0000"
252
- },
253
- {
254
- "id": "10150212636701960",
255
- "from": {
256
- "name": "Marilyn King",
257
- "id": "1676236979"
258
- },
259
- "to": {
260
- "name": "Graffiti",
261
- "id": "2439131959"
262
- },
263
- "rating": 3,
264
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
265
- "created_time": "2011-06-19T12:12:14+0000"
266
- },
267
- {
268
- "id": "10150212582536960",
269
- "from": {
270
- "name": "Siti Nur Maisarah",
271
- "id": "100001567784047"
272
- },
273
- "to": {
274
- "name": "Graffiti",
275
- "id": "2439131959"
276
- },
277
- "rating": 5,
278
- "message": "I like it !",
279
- "created_time": "2011-06-19T10:10:41+0000"
280
- },
281
- {
282
- "id": "10150212576206960",
283
- "from": {
284
- "name": "Pico Yoomi",
285
- "id": "100000999342831"
286
- },
287
- "to": {
288
- "name": "Graffiti",
289
- "id": "2439131959"
290
- },
291
- "rating": 5,
292
- "message": "I want to be new",
293
- "created_time": "2011-06-19T09:54:19+0000"
294
- },
295
- {
296
- "id": "10150212423586960",
297
- "from": {
298
- "name": "Bubba Harvey",
299
- "id": "100000665588837"
300
- },
301
- "to": {
302
- "name": "Graffiti",
303
- "id": "2439131959"
304
- },
305
- "rating": 5,
306
- "created_time": "2011-06-19T03:44:19+0000"
307
- },
308
- {
309
- "id": "10150212382701960",
310
- "from": {
311
- "name": "Elaine Montgomery",
312
- "id": "618755752"
313
- },
314
- "to": {
315
- "name": "Graffiti",
316
- "id": "2439131959"
317
- },
318
- "rating": 5,
319
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
320
- "created_time": "2011-06-19T02:24:47+0000"
321
- },
322
- {
323
- "id": "10150212373411960",
324
- "from": {
325
- "name": "Isaac Arazi",
326
- "id": "100001556715786"
327
- },
328
- "to": {
329
- "name": "Graffiti",
330
- "id": "2439131959"
331
- },
332
- "rating": 5,
333
- "message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/\n\n",
334
- "created_time": "2011-06-19T02:09:25+0000"
335
- },
336
- {
337
- "id": "10150212210786960",
338
- "from": {
339
- "name": "Kyler Walker",
340
- "id": "100002226109916"
341
- },
342
- "to": {
343
- "name": "Graffiti",
344
- "id": "2439131959"
345
- },
346
- "rating": 3,
347
- "message": "yea 3 stars\n\n",
348
- "created_time": "2011-06-18T20:50:59+0000"
349
- }
350
- ],
351
- "paging": {
352
- "next": "https://graph.facebook.com/2439131959/reviews?limit=25&offset=25"
353
- }
354
- }