share_checker 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -4,6 +4,7 @@ gem "activesupport"
4
4
  gem "i18n"
5
5
  gem "crack"
6
6
  gem "curb"
7
+ gem "nokogiri"
7
8
 
8
9
  #gem "rspec-rails", "~> 2.6.1"
9
10
  gem "rspec", "~> 2.6.0", :require => "spec"
@@ -1,3 +1,5 @@
1
+ require 'nokogiri'
2
+
1
3
  module ShareChecker
2
4
  module Providers
3
5
  class Facebook < Provider
@@ -18,8 +20,9 @@ module ShareChecker
18
20
  # </links_getStats_response>
19
21
  #
20
22
  def parse(response)
21
- doc = parse_xml(response)
22
- doc.nil? ? 0 : doc["links_getStats_response"]["link_stat"]["like_count"].to_i
23
+ doc = ::Nokogiri::XML(response)
24
+ node = doc.at("like_count")
25
+ node.nil? ? 0 : node.content.to_i
23
26
  end
24
27
 
25
28
  def url
@@ -1,3 +1,3 @@
1
1
  module ShareChecker
2
- VERSION = "0.1.3".freeze
2
+ VERSION = "0.1.4".freeze
3
3
  end
@@ -6,20 +6,8 @@ describe ShareChecker::Providers::Facebook do
6
6
  end
7
7
 
8
8
  it "should parse response from facebook" do
9
- response = '<links_getStats_response list="true">
10
- <link_stat>
11
- <url>http://www.mcdonaldseurokids2012.com.ua/challenges/1/works/98</url>
12
- <normalized_url>http://www.mcdonaldseurokids2012.com.ua/challenges/1/works/98</normalized_url>
13
- <share_count>36</share_count>
14
- <like_count>406</like_count>
15
- <comment_count>0</comment_count>
16
- <total_count>442</total_count>
17
- <click_count>0</click_count>
18
- <comments_fbid>10150218116270823</comments_fbid>
19
- <commentsbox_count>0</commentsbox_count>
20
- </link_stat>
21
- </links_getStats_response>'
9
+ response = '<links_getStats_response xsi:schemaLocation="http://api.facebook.com/1.0/ http://api.facebook.com/1.0/facebook.xsd" list="true"><link_stat><url>http://www.mcdonaldseurokids2012.com.ua/works/570</url><normalized_url>http://www.mcdonaldseurokids2012.com.ua/works/570</normalized_url><share_count>0</share_count><like_count>16</like_count><comment_count>0</comment_count><total_count>16</total_count><click_count>0</click_count><comments_fbid>10150408802277464</comments_fbid><commentsbox_count>0</commentsbox_count></link_stat></links_getStats_response>'
22
10
 
23
- @provider.parse(response).should == 406
11
+ @provider.parse(response).should == 16
24
12
  end
25
13
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: share_checker
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 19
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 3
10
- version: 0.1.3
9
+ - 4
10
+ version: 0.1.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Igor Galeta
@@ -47,7 +47,7 @@ dependencies:
47
47
  type: :runtime
48
48
  version_requirements: *id002
49
49
  - !ruby/object:Gem::Dependency
50
- name: curb
50
+ name: nokogiri
51
51
  prerelease: false
52
52
  requirement: &id003 !ruby/object:Gem::Requirement
53
53
  none: false
@@ -60,6 +60,20 @@ dependencies:
60
60
  version: "0"
61
61
  type: :runtime
62
62
  version_requirements: *id003
63
+ - !ruby/object:Gem::Dependency
64
+ name: curb
65
+ prerelease: false
66
+ requirement: &id004 !ruby/object:Gem::Requirement
67
+ none: false
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ hash: 3
72
+ segments:
73
+ - 0
74
+ version: "0"
75
+ type: :runtime
76
+ version_requirements: *id004
63
77
  description: Insert ShareChecker description.
64
78
  email: galeta.igor@gmail.com
65
79
  executables: []