social_profile 0.3.0 → 0.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fdac7e14e4ac53d6ed004757214c21d530ee41c8
4
- data.tar.gz: bf33b21598dc7bf2a1615c5ee1c3385842a406f0
3
+ metadata.gz: c21a840a30743393c5db4e6b8c50324eb8b85cfd
4
+ data.tar.gz: 75ed734e1adabffcd3900538b7dd0cfec0bf963f
5
5
  SHA512:
6
- metadata.gz: 9647a224c9e7d0de76ffad852de0143a0bdee4fc66b11f0df6c51df645fb270673044f15e5a7a49c39d190490eb95216321727be8cb9dd33c61b990d479f4009
7
- data.tar.gz: 5095bf772342c7f5a6f5807edab3e58bb979d83140ccff35657d17e2762ab56f2eb49da8e93aab9ecba2a9d6887499af0974e395499870216ef4c4b03ae9d15f
6
+ metadata.gz: 855914fce8f44a41e16b7c6ac685b9a0ebcfbcef4de0d4a9c1f5495359f522347d067fc910b1e7ea640453acb76159ee6885f5c04093bd27fcaf978b4dfa5ab0
7
+ data.tar.gz: df514b0f3f5dba7be28a6d17b483053a8f9bdc080625389956f382833f376e481b14ccdf444290fce83014b8edadc4366a1eb8c2e6ff2b57d6737ee63e8d9879
data/Gemfile CHANGED
@@ -6,4 +6,7 @@ gemspec
6
6
  gem "rspec", "~> 2.13.0"
7
7
  gem "fuubar"
8
8
  # gem "webmock", "~> 1.16.1"
9
- gem "fb_graph-mock", "~> 1.0.1"
9
+ gem 'webmock', '~> 2.1'
10
+
11
+ gem 'rack', '~> 1.6', '>= 1.6.4'
12
+ gem 'activesupport', '~> 4.0', '>= 4.0.13'
@@ -1,29 +1,26 @@
1
- require "fb_graph"
1
+ require "fb_graph2"
2
2
 
3
3
  module SocialProfile
4
4
  module People
5
5
  class Facebook < Person
6
- FRIENDS_FQL = "SELECT friend_count FROM user WHERE uid=me()"
7
- FIRST_POST_FQL = "SELECT created_time FROM stream WHERE source_id = me() AND created_time < {date} limit 1"
8
6
  LAST_POSTS_FIELDS = [
9
- "comments.fields(created_time).limit(1).summary(true)",
7
+ "comments.fields(created_time).limit(1).summary(true)",
10
8
  "likes.limit(1).fields(id).summary(true)",
11
9
  "created_time",
12
10
  "shares"
13
11
  ]
14
12
  POST_FIELDS = [
15
- "comments.fields(created_time).limit(1).summary(true)",
13
+ "comments.fields(created_time).limit(1).summary(true)",
16
14
  "likes.limit(1).fields(id).summary(true)",
17
15
  "created_time",
18
16
  "shares"
19
17
  ]
20
- MUTUAL_FRIENDS = "SELECT uid, mutual_friend_count FROM user WHERE uid IN(SELECT uid2 FROM friend WHERE uid1=me()) ORDER BY mutual_friend_count"
21
18
 
22
19
  # Find album by id
23
20
  def fetch_album(album_id)
24
- ::FbGraph::Album.fetch(album_id, :access_token => access_token)
21
+ ::FbGraph2::Album.fetch(album_id, :access_token => access_token)
25
22
  end
26
-
23
+
27
24
  # Create new album id
28
25
  def album!(options = {})
29
26
  user.album!(options)
@@ -32,7 +29,7 @@ module SocialProfile
32
29
  # Get friends count
33
30
  #
34
31
  def friends_count
35
- @friends_count ||= fetch_friends_count
32
+ @friends_count ||= friends(limit: 1).summary['total_count']
36
33
  end
37
34
 
38
35
  # Get followers count
@@ -41,27 +38,11 @@ module SocialProfile
41
38
  @followers_count ||= followers(:limit => 1).size
42
39
  end
43
40
 
44
- def fetch_friends_count
45
- response = FbGraph::Query.new(FRIENDS_FQL).fetch(:access_token => access_token)
46
-
47
- response = response.first if response.is_a?(Array)
48
- return nil if response.is_a?(Hash) && response["friend_count"].blank?
49
-
50
- response["friend_count"].to_i
51
- end
52
-
53
- # Check if exists any post before current year
41
+ # Check if exists any post before current year
54
42
  #
55
43
  def first_post_exists?(year)
56
- timestamp = Time.new(year, 1, 1).utc.to_i
57
-
58
- _sql = FIRST_POST_FQL.gsub('{date}', timestamp.to_s)
59
- response = FbGraph::Query.new(_sql).fetch(:access_token => access_token)
60
-
61
- response = response.first if response.is_a?(Array)
62
- return nil if response.nil? || (response.is_a?(Hash) && response["created_time"].blank?)
63
-
64
- response["created_time"].to_i
44
+ # TODO
45
+ return nil
65
46
  end
66
47
 
67
48
  # Get last limited posts from feed with comments, shares and likes counters
@@ -69,7 +50,7 @@ module SocialProfile
69
50
  def last_posts(limit, options = {})
70
51
  fields = options[:fields] || LAST_POSTS_FIELDS
71
52
 
72
- user.feed(:fields => fields.join(","), :limit => limit)
53
+ user.feed(:fields => fields.join(","), :limit => limit)
73
54
  end
74
55
 
75
56
  # Get last post by days from feed with comments, shares and likes counters
@@ -82,7 +63,7 @@ module SocialProfile
82
63
 
83
64
  posts = collection = last_posts(limit, options)
84
65
  return [] if posts.blank? || posts.last.created_time.nil?
85
-
66
+
86
67
  last_created_time = posts.last.created_time
87
68
 
88
69
  while !last_created_time.blank? && last_created_time > date && iteration < max_iteration
@@ -131,23 +112,19 @@ module SocialProfile
131
112
  def fetch_post(post_uid, options = {})
132
113
  fields = options[:fields] || POST_FIELDS
133
114
 
134
- ::FbGraph::Post.fetch(post_uid, :fields => fields.join(","), :access_token => access_token)
115
+ ::FbGraph2::Post.fetch(post_uid, :fields => fields.join(","), :access_token => access_token)
135
116
  end
136
117
 
137
118
  # Get friends list with mutual friends counter
138
119
  #
139
120
  def mutual_friends(options={})
140
- response = FbGraph::Query.new(MUTUAL_FRIENDS).fetch(:access_token => access_token)
141
-
142
- return {} unless response.is_a?(Array)
143
-
144
- response.inject({}) {|h, a| h.merge!(a["uid"] => a["mutual_friend_count"]) }
121
+ return {}
145
122
  end
146
123
 
147
124
  protected
148
-
125
+
149
126
  def user
150
- @user ||= ::FbGraph::User.me(access_token)
127
+ @user ||= ::FbGraph2::User.me(access_token)
151
128
  end
152
129
  end
153
130
  end
@@ -1,4 +1,4 @@
1
1
  # encoding: utf-8
2
2
  module SocialProfile
3
- VERSION = "0.3.0"
3
+ VERSION = "0.3.1"
4
4
  end
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.add_development_dependency "bundler", "~> 1.3"
22
22
  spec.add_development_dependency "rake"
23
23
 
24
- spec.add_dependency "fb_graph", '~> 2.7.16'
24
+ spec.add_dependency "fb_graph2", '~> 0.7.9'
25
25
  spec.add_dependency "vkontakte", '~> 0.0.6'
26
26
  spec.add_dependency "twitter", '~> 5.11.0'
27
27
  spec.add_dependency "instagram", '~> 1.1.6'
@@ -1,7 +1,249 @@
1
1
  {
2
2
  "data": [
3
3
  {
4
- "friend_count": 230
4
+ "name": "Eugene Koshevoy",
5
+ "id": "545778644"
6
+ },
7
+ {
8
+ "name": "Sasha Yatsenko",
9
+ "id": "547332829"
10
+ },
11
+ {
12
+ "name": "Borisov Kirill",
13
+ "id": "10153093142651662"
14
+ },
15
+ {
16
+ "name": "Kos Chekanov",
17
+ "id": "582680904"
18
+ },
19
+ {
20
+ "name": "Anna Petrova",
21
+ "id": "634769245"
22
+ },
23
+ {
24
+ "name": "Andrew Volovyk",
25
+ "id": "665885244"
26
+ },
27
+ {
28
+ "name": "Maksym Paraska",
29
+ "id": "682378737"
30
+ },
31
+ {
32
+ "name": "Andriy Yaroshenko",
33
+ "id": "685815706"
34
+ },
35
+ {
36
+ "name": "Mike Podgorniy",
37
+ "id": "694308193"
38
+ },
39
+ {
40
+ "name": "Dima Shvets",
41
+ "id": "815127247"
42
+ },
43
+ {
44
+ "name": "Sasha Chervonnaya",
45
+ "id": "844948619"
46
+ },
47
+ {
48
+ "name": "Dmitrij Odnokoz",
49
+ "id": "1061020626"
50
+ },
51
+ {
52
+ "name": "Maxim Balter",
53
+ "id": "1087671204"
54
+ },
55
+ {
56
+ "name": "Pavlo Pedenko",
57
+ "id": "1101865920"
58
+ },
59
+ {
60
+ "name": "Iurii Gladkyi",
61
+ "id": "1110428611"
62
+ },
63
+ {
64
+ "name": "Ivan Kucherenko",
65
+ "id": "1154110218"
66
+ },
67
+ {
68
+ "name": "Yuri Babich",
69
+ "id": "1259841049"
70
+ },
71
+ {
72
+ "name": "Juriy Kolomiyets",
73
+ "id": "1261927378"
74
+ },
75
+ {
76
+ "name": "Юджин Власов",
77
+ "id": "10206834744172225"
78
+ },
79
+ {
80
+ "name": "Dmitriy Pustovalov",
81
+ "id": "10206562048040150"
82
+ },
83
+ {
84
+ "name": "Yuriy Kachkarda",
85
+ "id": "1570795596"
86
+ },
87
+ {
88
+ "name": "Yuriy Romanyukha",
89
+ "id": "1671304176"
90
+ },
91
+ {
92
+ "name": "Yaroslav Korets",
93
+ "id": "10202827068552546"
94
+ },
95
+ {
96
+ "name": "Marat Tyncherov",
97
+ "id": "1702527121"
98
+ },
99
+ {
100
+ "name": "Galya Fesenko",
101
+ "id": "100000034524504"
102
+ },
103
+ {
104
+ "name": "Olga Polyakh",
105
+ "id": "100000079483665"
106
+ },
107
+ {
108
+ "name": "Dima Nikulin",
109
+ "id": "100000313477419"
110
+ },
111
+ {
112
+ "name": "Valentine Hrytsenko",
113
+ "id": "100000387894888"
114
+ },
115
+ {
116
+ "name": "Vadym Dzekunov",
117
+ "id": "100000389469252"
118
+ },
119
+ {
120
+ "name": "Yura Glushakov",
121
+ "id": "100000398199408"
122
+ },
123
+ {
124
+ "name": "Anna Kalinina",
125
+ "id": "100000595299107"
126
+ },
127
+ {
128
+ "name": "Vitaly Tkach",
129
+ "id": "100000639477252"
130
+ },
131
+ {
132
+ "name": "Dmytro Yevdokymov",
133
+ "id": "1113230018709990"
134
+ },
135
+ {
136
+ "name": "Natalie Vasylchenko",
137
+ "id": "100000744252267"
138
+ },
139
+ {
140
+ "name": "Kostya Alekseev",
141
+ "id": "100000820303483"
142
+ },
143
+ {
144
+ "name": "Renat Ziganshyn",
145
+ "id": "828323723871639"
146
+ },
147
+ {
148
+ "name": "Taras Parandii",
149
+ "id": "100001171241046"
150
+ },
151
+ {
152
+ "name": "Ana Prykhodko",
153
+ "id": "100001174874311"
154
+ },
155
+ {
156
+ "name": "Artem Pochepetsky",
157
+ "id": "100001415232830"
158
+ },
159
+ {
160
+ "name": "Slava Balbek",
161
+ "id": "877359342324659"
162
+ },
163
+ {
164
+ "name": "Eugene Zingerman",
165
+ "id": "836922379708720"
166
+ },
167
+ {
168
+ "name": "Dmitry Kornilov",
169
+ "id": "100001743198982"
170
+ },
171
+ {
172
+ "name": "Сергей Червонопильский",
173
+ "id": "792831290785009"
174
+ },
175
+ {
176
+ "name": "Stas Matviyenko",
177
+ "id": "100001747086412"
178
+ },
179
+ {
180
+ "name": "Игорь Шороп",
181
+ "id": "100001804116923"
182
+ },
183
+ {
184
+ "name": "Vitalii Malets",
185
+ "id": "100001853105079"
186
+ },
187
+ {
188
+ "name": "Pavel Matvienko",
189
+ "id": "100001869376766"
190
+ },
191
+ {
192
+ "name": "Евгений Красник",
193
+ "id": "100001871265273"
194
+ },
195
+ {
196
+ "name": "Kate Alexeyeva",
197
+ "id": "100001930447129"
198
+ },
199
+ {
200
+ "name": "Serhiy Matchuk",
201
+ "id": "840706946007392"
202
+ },
203
+ {
204
+ "name": "Andrew Litvin",
205
+ "id": "100002236334033"
206
+ },
207
+ {
208
+ "name": "Dasha Samoilenko",
209
+ "id": "100002296845982"
210
+ },
211
+ {
212
+ "name": "Pavlo Kuznetsov",
213
+ "id": "100002854099899"
214
+ },
215
+ {
216
+ "name": "Andrey Solopchuk",
217
+ "id": "100002858024403"
218
+ },
219
+ {
220
+ "name": "Alesya Karpuk",
221
+ "id": "100003959264633"
222
+ },
223
+ {
224
+ "name": "Anna Polishchuk",
225
+ "id": "100004485101723"
226
+ },
227
+ {
228
+ "name": "Maryna Tyshkevych",
229
+ "id": "100008037484267"
230
+ },
231
+ {
232
+ "name": "Дмитрий Миняйло",
233
+ "id": "196593574005953"
234
+ },
235
+ {
236
+ "name": "Supsay Ivan",
237
+ "id": "170045356726370"
238
+ }
239
+ ],
240
+ "paging": {
241
+ "cursors": {
242
+ "before": "QVFIUndSUHZArRWVtbERubUV4LVByRm9uaE5Sa0VqaW4yYnNDQnJGQ05SRm1nSW0zVWNRZAUQ5dWRGOWxLWEhGVTJsR0QZD",
243
+ "after": "QVFIUjRIOXN3WWFYQVVZAcllkRUNGOWZAFRlQ2Rk1pRHlvaW1wX0xxMU0ya3lyeXNDSkVYSEd2TUoxQ1lKMzBLYXg5V0x4V0otaFp2OExFZA1Bwa0FmSjFvOTVR"
5
244
  }
6
- ]
7
- }
245
+ },
246
+ "summary": {
247
+ "total_count": 328
248
+ }
249
+ }
@@ -6,7 +6,7 @@ describe SocialProfile::People::Facebook do
6
6
  end
7
7
 
8
8
  context "facebook" do
9
- before :all do
9
+ before :all do
10
10
  # FbGraph.debug!
11
11
  end
12
12
 
@@ -19,55 +19,36 @@ describe SocialProfile::People::Facebook do
19
19
  end
20
20
 
21
21
  it "should response to friends_count" do
22
- mock_fql SocialProfile::People::Facebook::FRIENDS_FQL, SocialProfile.root_path.join('spec/mock_json/facebook/friends_count.json'), :access_token => "abc" do
23
- @user.friends_count.should > 0
24
- end
22
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/friends?limit=1").
23
+ to_return(:status => 200, :body => fixture("facebook/friends_count.json"))
24
+
25
+ @user.friends_count.should == 328
25
26
  end
26
27
 
27
28
  it "should response to followers_count" do
28
- stub_request(:get, "https://graph.facebook.com/me/subscribers?access_token=abc&limit=1").
29
- to_return(:status => 200, :body => fixture("facebook/followers.json"))
30
-
31
29
  @user.followers_count.should == 0
32
30
  end
33
31
 
34
32
  it "should response to followers without limits (without fetch_all)" do
35
- stub_request(:get, "https://graph.facebook.com/me/subscribers?access_token=abc&limit=5000").
36
- to_return(:status => 200, :body => fixture("facebook/followers.json"))
37
-
38
33
  @user.followers.size.should == 0
39
34
  end
40
35
 
41
36
  it "should response to followers without limits (with fetch_all)" do
42
- stub_request(:get, "https://graph.facebook.com/me/subscribers?access_token=abc&limit=5000").
43
- to_return(:status => 200, :body => fixture("facebook/followers.json"))
44
-
45
37
  @user.followers(:fetch_all => true).size.should == 0
46
38
  end
47
39
 
48
40
  it "should response to followers list with limits" do
49
- stub_request(:get, "https://graph.facebook.com/me/subscribers?access_token=abc&limit=5").
50
- to_return(:status => 200, :body => fixture("facebook/followers_5_0.json"))
51
- stub_request(:get, "https://graph.facebook.com/me/subscribers?access_token=abc&after=MTE5ODU0NDEzNQ==&limit=5").
52
- to_return(:status => 200, :body => fixture("facebook/followers_5_10.json"))
53
- stub_request(:get, "https://graph.facebook.com/me/subscribers?access_token=abc&after=MTAwMDA0NDI3NDY3NjIx&limit=5").
54
- to_return(:status => 200, :body => fixture("facebook/followers_5_15.json"))
55
-
56
41
  @user.followers(:limit => 5, :fetch_all => true).size.should == 0
57
42
  end
58
43
 
59
44
  it "should response to first_post_exists?" do
60
- _sql = SocialProfile::People::Facebook::FIRST_POST_FQL.gsub('{date}', '1293832800')
61
-
62
- mock_fql _sql, SocialProfile.root_path.join('spec/mock_json/facebook/first_post.json'), :access_token => "abc" do
63
- @user.first_post_exists?(2011).should > 0
64
- end
45
+ @user.first_post_exists?(2011).should == nil
65
46
  end
66
47
 
67
48
  it "should response to last_posts" do
68
49
  fields = SocialProfile::People::Facebook::LAST_POSTS_FIELDS.join(",")
69
50
 
70
- stub_request(:get, "https://graph.facebook.com/me/feed?access_token=abc&fields=#{fields}&limit=600").
51
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/feed?fields=#{fields}&limit=600").
71
52
  to_return(:status => 200, :body => fixture("facebook/last_posts.json"))
72
53
 
73
54
  posts = @user.last_posts(600)
@@ -80,11 +61,11 @@ describe SocialProfile::People::Facebook do
80
61
  fields = SocialProfile::People::Facebook::LAST_POSTS_FIELDS.join(",")
81
62
  fields2 = fields.gsub('.fields(created_time)', '')
82
63
 
83
- stub_request(:get, "https://graph.facebook.com/me/feed?access_token=abc&fields=#{fields}&limit=5").
64
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/feed?fields=#{fields}&limit=5").
84
65
  to_return(:status => 200, :body => fixture("facebook/last_5_posts.json"))
85
- stub_request(:get, "https://graph.facebook.com/me/feed?access_token=abc&fields=#{fields2}&limit=5&until=1394475325").
66
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/feed?fields=#{fields2}&limit=5&until=1394475325").
86
67
  to_return(:status => 200, :body => fixture("facebook/last_5_posts_page_2.json"))
87
- stub_request(:get, "https://graph.facebook.com/me/feed?access_token=abc&fields=#{fields2}&limit=5&until=1394439420").
68
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/feed?fields=#{fields2}&limit=5&until=1394439420").
88
69
  to_return(:status => 200, :body => fixture("facebook/last_5_posts_page_3.json"))
89
70
 
90
71
  posts = @user.last_post_by_days(10, :limit => 5, :date_end => DateTime.new(2014, 3, 15))
@@ -99,9 +80,9 @@ describe SocialProfile::People::Facebook do
99
80
  "shares",
100
81
  "status_type"]
101
82
 
102
- stub_request(:get, "https://graph.facebook.com/me/feed?access_token=abc&fields=#{fields.join(',')}&limit=1000").
83
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/feed?fields=#{fields.join(',')}&limit=1000").
103
84
  to_return(:status => 200, :body => fixture("facebook/last_posts_big.json"))
104
- stub_request(:get, "https://graph.facebook.com/me/feed?access_token=abc&fields=#{fields.join(',')}&limit=1000&until=1394789304").
85
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/feed?fields=#{fields.join(',')}&limit=1000&until=1394789304").
105
86
  to_return(:status => 200, :body => fixture("facebook/last_posts_big2.json"))
106
87
 
107
88
  posts = @user.last_post_by_days(30, :limit => 1000, :date_end => DateTime.new(2014, 4, 6), :fields => fields)
@@ -112,7 +93,7 @@ describe SocialProfile::People::Facebook do
112
93
  end
113
94
 
114
95
  it "should get friends list" do
115
- stub_request(:get, "https://graph.facebook.com/me/friends?access_token=abc&limit=100000").
96
+ stub_request(:get, "https://graph.facebook.com/v2.3/me/friends?limit=100000").
116
97
  to_return(:status => 200, :body => fixture("facebook/friends.json"))
117
98
 
118
99
  friends = @user.friends(:limit => 100000)
@@ -122,12 +103,10 @@ describe SocialProfile::People::Facebook do
122
103
  end
123
104
 
124
105
  it "should get mutual friends" do
125
- mock_fql SocialProfile::People::Facebook::MUTUAL_FRIENDS, SocialProfile.root_path.join('spec/mock_json/facebook/mutual_friends.json'), :access_token => "abc" do
126
- mutual_friends = @user.mutual_friends
106
+ mutual_friends = @user.mutual_friends
127
107
 
128
- mutual_friends.should be_a(Hash)
129
- mutual_friends.size.should == 251
130
- end
108
+ mutual_friends.should be_a(Hash)
109
+ mutual_friends.size.should == 0
131
110
  end
132
111
  end
133
112
  end
@@ -11,25 +11,25 @@ describe SocialProfile::People::Vkontakte do
11
11
  before(:each) do
12
12
  @user = SocialProfile::Person.get(:vkontakte, "2592709", "abc")
13
13
 
14
- stub_request(:get, "https://api.vk.com/method/users.get?access_token=abc&fields=counters&uids=2592709").
14
+ stub_request(:get, "https://api.vk.com/method/users.get?access_token=abc&fields=counters&user_ids=2592709&v=5.24").
15
15
  to_return(:status => 200, :body => fixture('vkontakte/friends_count.json'))
16
- stub_request(:get, "https://api.vk.com/method/wall.get?access_token=abc&count=100&filter=owner&offset=0&owner_id=2592709").
16
+ stub_request(:get, "https://api.vk.com/method/wall.get?access_token=abc&count=100&filter=owner&offset=0&owner_id=2592709&v=5.24").
17
17
  to_return(:status => 200, :body => fixture("vkontakte/last_posts.json"))
18
- stub_request(:get, "https://api.vk.com/method/likes.getList?access_token=abc&count=1000&item_id=655&offset=0&owner_id=2592709&type=post").
18
+ stub_request(:get, "https://api.vk.com/method/likes.getList?access_token=abc&count=1000&item_id=655&offset=0&owner_id=2592709&type=post&v=5.24").
19
19
  to_return(:status => 200, :body => fixture("vkontakte/likes_post_655.json"))
20
- stub_request(:get, "https://api.vk.com/method/likes.getList?access_token=abc&count=1000&item_id=290498375&offset=0&owner_id=2592709&type=photo").
20
+ stub_request(:get, "https://api.vk.com/method/likes.getList?access_token=abc&count=1000&item_id=290498375&offset=0&owner_id=2592709&type=photo&v=5.24").
21
21
  to_return(:status => 200, :body => fixture("vkontakte/likes_photo_290498375.json"))
22
- stub_request(:get, "https://api.vk.com/method/wall.getComments?access_token=abc&count=100&need_likes=1&offset=0&owner_id=2592709&post_id=655&preview_length=0").
22
+ stub_request(:get, "https://api.vk.com/method/wall.getComments?access_token=abc&count=100&need_likes=1&offset=0&owner_id=2592709&post_id=655&preview_length=0&v=5.24").
23
23
  to_return(:status => 200, :body => fixture("vkontakte/comments_post_655.json"))
24
24
  stub_request(:get, "https://api.vk.com/method/photos.getAllComments?access_token=abc&count=100&need_likes=1&offset=0&owner_id=2592709&uid=2592709").
25
25
  to_return(:status => 200, :body => fixture("vkontakte/comments_photos.json"))
26
- stub_request(:get, "https://api.vk.com/method/friends.get?access_token=abc&count=5000&fields=domain&offset=0&user_id=2592709").
26
+ stub_request(:get, "https://api.vk.com/method/friends.get?access_token=abc&count=5000&fields=domain&offset=0&user_id=2592709&v=5.24").
27
27
  to_return(:status => 200, :body => fixture("vkontakte/friends.json"))
28
- stub_request(:get, "https://api.vk.com/method/users.getFollowers?access_token=abc&count=1000&fields=screen_name&offset=0&user_id=2592709").
28
+ stub_request(:get, "https://api.vk.com/method/users.getFollowers?access_token=abc&count=1000&fields=screen_name&offset=0&user_id=2592709&v=5.24").
29
29
  to_return(:status => 200, :body => fixture("vkontakte/followers.json"))
30
- stub_request(:get, "https://api.vk.com/method/wall.getReposts?access_token=abc&count=1000&offset=0&owner_id=2592709&post_id=3675").
30
+ stub_request(:get, "https://api.vk.com/method/wall.getReposts?access_token=abc&count=1000&offset=0&owner_id=2592709&post_id=3675&v=5.24").
31
31
  to_return(:status => 200, :body => fixture("vkontakte/shares_post_3675.json"))
32
- stub_request(:get, "https://api.vk.com/method/wall.getById?access_token=abc&extended=1&posts=2592709_655").
32
+ stub_request(:get, "https://api.vk.com/method/wall.getById?access_token=abc&extended=1&posts=2592709_655&v=5.24").
33
33
  to_return(:status => 200, :body => fixture("vkontakte/post.json"))
34
34
  end
35
35
 
@@ -54,7 +54,7 @@ describe SocialProfile::People::Vkontakte do
54
54
  end
55
55
 
56
56
  it "should response to last_post_by_days by 2119 days" do
57
- stub_request(:get, "https://api.vk.com/method/wall.get?access_token=abc&count=100&filter=owner&offset=100&owner_id=2592709").
57
+ stub_request(:get, "https://api.vk.com/method/wall.get?access_token=abc&count=100&filter=owner&offset=100&owner_id=2592709&v=5.24").
58
58
  to_return(:status => 200, :body => fixture("vkontakte/last_posts_2.json"))
59
59
 
60
60
  posts = @user.last_post_by_days(2119, :date_end => DateTime.new(2014, 8, 19))
@@ -106,11 +106,11 @@ describe SocialProfile::People::Vkontakte do
106
106
  end
107
107
 
108
108
  it "should fetch all followers with iteration by 20 items in step" do
109
- stub_request(:get, "https://api.vk.com/method/users.getFollowers?access_token=abc&count=20&fields=screen_name&offset=0&user_id=2592709").
109
+ stub_request(:get, "https://api.vk.com/method/users.getFollowers?access_token=abc&count=20&fields=screen_name&offset=0&user_id=2592709&v=5.24").
110
110
  to_return(:status => 200, :body => fixture("vkontakte/followers_20.json"))
111
- stub_request(:get, "https://api.vk.com/method/users.getFollowers?access_token=abc&count=20&fields=screen_name&offset=20&user_id=2592709").
111
+ stub_request(:get, "https://api.vk.com/method/users.getFollowers?access_token=abc&count=20&fields=screen_name&offset=20&user_id=2592709&v=5.24").
112
112
  to_return(:status => 200, :body => fixture("vkontakte/followers_20_2.json"))
113
-
113
+
114
114
  @user.followers(:count => 20).size.should == 30
115
115
  end
116
116
 
@@ -122,7 +122,7 @@ describe SocialProfile::People::Vkontakte do
122
122
  it "should get mutual_friends" do
123
123
  stub_request(:get, /friends\.getMutual/).
124
124
  to_return(:status => 200, :body => fixture("vkontakte/mutual_friends.json"))
125
-
125
+
126
126
  _hash = @user.mutual_friends(:target_uids => "seperated_ids")
127
127
  _hash.size.should == 206
128
128
  end
data/spec/spec_helper.rb CHANGED
@@ -1,8 +1,6 @@
1
1
  require "rspec"
2
2
  require "social_profile"
3
- require 'fb_graph/mock'
4
-
5
- include FbGraph::Mock
3
+ require 'webmock/rspec'
6
4
 
7
5
  # Load support files
8
6
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
@@ -24,4 +22,4 @@ end
24
22
 
25
23
  def fixture(file)
26
24
  File.read(SocialProfile.root_path.join('spec/mock_json', file))
27
- end
25
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: social_profile
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Galeta
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-12-11 00:00:00.000000000 Z
12
+ date: 2016-08-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -40,19 +40,19 @@ dependencies:
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
- name: fb_graph
43
+ name: fb_graph2
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: 2.7.16
48
+ version: 0.7.9
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: 2.7.16
55
+ version: 0.7.9
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: vkontakte
58
58
  requirement: !ruby/object:Gem::Requirement
@@ -214,7 +214,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
214
214
  version: '0'
215
215
  requirements: []
216
216
  rubyforge_project:
217
- rubygems_version: 2.1.11
217
+ rubygems_version: 2.4.8
218
218
  signing_key:
219
219
  specification_version: 4
220
220
  summary: Wrapper for Omniauth profile hash
@@ -261,3 +261,4 @@ test_files:
261
261
  - spec/providers/twitter_spec.rb
262
262
  - spec/providers/vkontakte_spec.rb
263
263
  - spec/spec_helper.rb
264
+ has_rdoc: