crown 0.0.1 → 0.0.2

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.1
1
+ 0.0.2
data/crown.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{crown}
8
- s.version = "0.0.1"
8
+ s.version = "0.0.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["clown"]
12
- s.date = %q{2011-02-18}
12
+ s.date = %q{2011-02-19}
13
13
  s.description = %q{crown is uncategorized ruby libraries, which is added according to author's mood :-D}
14
14
  s.email = %q{tt.clown@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -26,15 +26,18 @@ Gem::Specification.new do |s|
26
26
  "Rakefile",
27
27
  "VERSION",
28
28
  "crown.gemspec",
29
- "lib/crown.gemspec",
30
29
  "lib/crown.rb",
30
+ "lib/crown/backtype.rb",
31
31
  "lib/crown/buzzurl.rb",
32
32
  "lib/crown/delicious.rb",
33
+ "lib/crown/facebook.rb",
33
34
  "lib/crown/hatena.rb",
34
35
  "lib/crown/hatena/bookmark.rb",
35
36
  "lib/crown/http.rb",
36
37
  "lib/crown/livedoor.rb",
37
38
  "lib/crown/livedoor/clip.rb",
39
+ "lib/crown/topsy.rb",
40
+ "lib/crown/tweetmeme.rb",
38
41
  "lib/crown/twitter.rb",
39
42
  "lib/crown/yahoo.rb",
40
43
  "lib/crown/yahoo/bookmark.rb",
data/lib/crown.rb CHANGED
@@ -40,7 +40,11 @@ require 'crown/livedoor'
40
40
  require 'crown/buzzurl'
41
41
  require 'crown/yahoo'
42
42
  require 'crown/twitter'
43
+ require 'crown/topsy'
44
+ require 'crown/tweetmeme'
45
+ require 'crown/backtype'
46
+ require 'crown/facebook'
43
47
 
44
48
  module Crown
45
- VERSION = '0.0.1'
49
+ VERSION = '0.0.2'
46
50
  end
@@ -0,0 +1,64 @@
1
+ # -*- coding: utf-8 -*-
2
+ # --------------------------------------------------------------------------- #
3
+ #
4
+ # backtype.rb
5
+ #
6
+ # Copyright (c) 2008 - 2011, clown.
7
+ #
8
+ # Redistribution and use in source and binary forms, with or without
9
+ # modification, are permitted provided that the following conditions
10
+ # are met:
11
+ #
12
+ # - Redistributions of source code must retain the above copyright
13
+ # notice, this list of conditions and the following disclaimer.
14
+ # - Redistributions in binary form must reproduce the above copyright
15
+ # notice, this list of conditions and the following disclaimer in the
16
+ # documentation and/or other materials provided with the distribution.
17
+ # - No names of its contributors may be used to endorse or promote
18
+ # products derived from this software without specific prior written
19
+ # permission.
20
+ #
21
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
27
+ # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28
+ # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30
+ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31
+ # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
+ #
33
+ # --------------------------------------------------------------------------- #
34
+ module Crown
35
+ module BackType
36
+ require 'cgi'
37
+ require 'net/http'
38
+ require 'crown/http'
39
+ require 'rubygems'
40
+ require 'json'
41
+ Net::HTTP.version_1_2
42
+
43
+ # ------------------------------------------------------------------- #
44
+ # count
45
+ # ------------------------------------------------------------------- #
46
+ def count(uri, api_key, proxy_host = nil, proxy_port = nil)
47
+ return 0 if (api_key == nil)
48
+
49
+ begin
50
+ session = Net::HTTP.new("api.backtype.com", 80, proxy_host, proxy_port)
51
+ path = "/tweetcount.json?q=" + CGI.escape(uri) + "&key=" + api_key
52
+ response = Crown::HTTP.get(session, path)
53
+ return nil if (response == nil || response.code.to_i != 200)
54
+
55
+ json = JSON.parse(response.body)
56
+ return json["tweetcount"].to_i
57
+ rescue Exception
58
+ return 0
59
+ end
60
+ end
61
+
62
+ module_function :count
63
+ end # BackTweets
64
+ end # Crown
data/lib/crown/buzzurl.rb CHANGED
@@ -49,7 +49,8 @@ module Crown
49
49
  # を指定する.
50
50
  #
51
51
  # ------------------------------------------------------------------- #
52
- def count(uri, session = Net::HTTP.new('api.buzzurl.jp', 80))
52
+ def count(uri, proxy_host = nil, proxy_port = nil)
53
+ session = Net::HTTP.new('api.buzzurl.jp', 80, proxy_host, proxy_port)
53
54
  path = '/api/counter/v1/json?url=' + CGI.escape(uri)
54
55
 
55
56
  begin
@@ -49,7 +49,8 @@ module Crown
49
49
  # を指定する.
50
50
  #
51
51
  # ------------------------------------------------------------------- #
52
- def count(uri, session = Net::HTTP.new('feeds.delicious.com', 80))
52
+ def count(uri, proxy_host = nil, proxy_port = nil)
53
+ session = Net::HTTP.new('feeds.delicious.com', 80, proxy_host, proxy_port)
53
54
  path = '/v2/json/urlinfo/blogbadge?hash=' + Digest::MD5.hexdigest(uri)
54
55
 
55
56
  begin
@@ -0,0 +1,72 @@
1
+ # -*- coding: utf-8 -*-
2
+ # --------------------------------------------------------------------------- #
3
+ #
4
+ # facebook.rb
5
+ #
6
+ # Copyright (c) 2008 - 2011, clown.
7
+ #
8
+ # Redistribution and use in source and binary forms, with or without
9
+ # modification, are permitted provided that the following conditions
10
+ # are met:
11
+ #
12
+ # - Redistributions of source code must retain the above copyright
13
+ # notice, this list of conditions and the following disclaimer.
14
+ # - Redistributions in binary form must reproduce the above copyright
15
+ # notice, this list of conditions and the following disclaimer in the
16
+ # documentation and/or other materials provided with the distribution.
17
+ # - No names of its contributors may be used to endorse or promote
18
+ # products derived from this software without specific prior written
19
+ # permission.
20
+ #
21
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
27
+ # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28
+ # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30
+ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31
+ # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
+ #
33
+ # --------------------------------------------------------------------------- #
34
+ module Crown
35
+ module Facebook
36
+ require 'cgi'
37
+ require 'net/http'
38
+ require 'crown/http'
39
+ require 'rexml/document'
40
+ Net::HTTP.version_1_2
41
+
42
+ # ------------------------------------------------------------------- #
43
+ # structures
44
+ # ------------------------------------------------------------------- #
45
+ Counter = Struct.new(:like, :total, :share, :click)
46
+
47
+ # ------------------------------------------------------------------- #
48
+ # count
49
+ # ------------------------------------------------------------------- #
50
+ def count(uri, proxy_host = nil, proxy_port = nil)
51
+ begin
52
+ session = Net::HTTP.new("api.facebook.com", 80, proxy_host, proxy_port)
53
+ query = "select like_count, total_count, share_count, click_count from link_stat where url=\"" + uri + '"'
54
+ path = "/method/fql.query?query=" + CGI.escape(query)
55
+ response = Crown::HTTP.get(session, path)
56
+ return nil if (response == nil || response.code.to_i != 200)
57
+
58
+ xml = REXML::Document.new(response.body)
59
+ result = Counter.new
60
+ result.like = xml.elements['/fql_query_response/link_stat/like_count'].text.to_i
61
+ result.total = xml.elements['/fql_query_response/link_stat/total_count'].text.to_i
62
+ result.share = xml.elements['/fql_query_response/link_stat/share_count'].text.to_i
63
+ result.click = xml.elements['/fql_query_response/link_stat/click_count'].text.to_i
64
+ return result
65
+ rescue Exception
66
+ return nil
67
+ end
68
+ end
69
+
70
+ module_function :count
71
+ end # Facebook
72
+ end # Crown
@@ -57,13 +57,13 @@ module Crown
57
57
  # ----------------------------------------------------------- #
58
58
  # initialize
59
59
  # ----------------------------------------------------------- #
60
- def initialize(path, session = Net::HTTP.new("b.hatena.ne.jp", 80))
60
+ def initialize(path, proxy_host = nil, proxy_port = nil)
61
+ @session = Net::HTTP.new("b.hatena.ne.jp", 80, proxy_host, proxy_port)
61
62
  @basename = String.new
62
63
  @basename.concat("/") if (path[0] != 47)
63
64
  @basename.concat(path)
64
65
  @basename.concat("/") if (@basename.match(/^\/[\w\-]+$/) != nil && !@@reserved.include?(@basename))
65
66
  @path = String.new(@basename)
66
- @session = session
67
67
  end
68
68
 
69
69
  # ----------------------------------------------------------- #
@@ -150,12 +150,11 @@ module Crown
150
150
  #
151
151
  # count
152
152
  #
153
- # uri に指定したページのブックマーク数を取得する.session
154
- # には Net::HTTP クラス,またはその派生クラスのインスタンス
155
- # を指定する.
153
+ # uri に指定したページのブックマーク数を取得する.
156
154
  #
157
155
  # --------------------------------------------------------------- #
158
- def count(uri, session = Net::HTTP.new('api.b.st-hatena.com', 80))
156
+ def count(uri, proxy_host = nil, proxy_port = nil)
157
+ session = Net::HTTP.new('api.b.st-hatena.com', 80, proxy_host, proxy_port)
159
158
  path = "/entry.count?url=" + CGI.escape(uri)
160
159
  begin
161
160
  result = Crown::HTTP.get(session, path)
@@ -170,12 +169,11 @@ module Crown
170
169
  #
171
170
  # get
172
171
  #
173
- # uri に指定したページのブックマーク情報を取得する.session
174
- # には Net::HTTP クラス,またはその派生クラスのインスタンス
175
- # を指定する.
172
+ # uri に指定したページのブックマーク情報を取得する.
176
173
  #
177
174
  # --------------------------------------------------------------- #
178
- def get(uri, session = Net::HTTP.new('b.hatena.ne.jp', 80))
175
+ def get(uri, proxy_host = nil, proxy_port = nil)
176
+ session = Net::HTTP.new('b.hatena.ne.jp', 80, proxy_host, proxy_port)
179
177
  path = '/entry/json/?url=' + CGI.escape(uri)
180
178
 
181
179
  begin
@@ -211,17 +209,15 @@ module Crown
211
209
  # each
212
210
  #
213
211
  # LinkTrace クラスを使用してブックマークされている記事の URL
214
- # 一覧を取得し,それらのブックマーク情報を順に返す.session
215
- # には Net::HTTP クラス,またはその派生クラスのインスタンス
216
- # を指定する.
212
+ # 一覧を取得し,それらのブックマーク情報を順に返す.
217
213
  #
218
214
  # --------------------------------------------------------------- #
219
- def each(query, session = Net::HTTP.new('b.hatena.ne.jp', 80))
220
- tracer = LinkTrace.new(query, session)
215
+ def each(query, proxy_host = nil, proxy_port = nil)
216
+ tracer = LinkTrace.new(query, proxy_host, proxy_port)
221
217
  while (tracer.more?)
222
218
  uris = tracer.get
223
219
  uris.each { |uri|
224
- result = Bookmark.get(uri, session)
220
+ result = Bookmark.get(uri, proxy_host, proxy_port)
225
221
  yield(result) if (result != nil)
226
222
  }
227
223
  end
@@ -44,9 +44,10 @@ module Crown
44
44
  # uri に指定したページのクリップ数を取得する.
45
45
  #
46
46
  # --------------------------------------------------------------- #
47
- def count(uri)
47
+ def count(uri, proxy_host = nil, proxy_port = nil)
48
48
  begin
49
- session = XMLRPC::Client.new2('http://rpc.clip.livedoor.com/count', nil, 10).proxy('clip')
49
+ proxy = proxy_host + ':' + proxy_port.to_s if (proxy_host && proxy_port)
50
+ session = XMLRPC::Client.new2('http://rpc.clip.livedoor.com/count', proxy, 10).proxy('clip')
50
51
  session.getCount(uri).each { |key, value|
51
52
  return value.to_i
52
53
  }
@@ -0,0 +1,62 @@
1
+ # -*- coding: utf-8 -*-
2
+ # --------------------------------------------------------------------------- #
3
+ #
4
+ # topsy.rb
5
+ #
6
+ # Copyright (c) 2008 - 2011, clown.
7
+ #
8
+ # Redistribution and use in source and binary forms, with or without
9
+ # modification, are permitted provided that the following conditions
10
+ # are met:
11
+ #
12
+ # - Redistributions of source code must retain the above copyright
13
+ # notice, this list of conditions and the following disclaimer.
14
+ # - Redistributions in binary form must reproduce the above copyright
15
+ # notice, this list of conditions and the following disclaimer in the
16
+ # documentation and/or other materials provided with the distribution.
17
+ # - No names of its contributors may be used to endorse or promote
18
+ # products derived from this software without specific prior written
19
+ # permission.
20
+ #
21
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
27
+ # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28
+ # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30
+ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31
+ # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
+ #
33
+ # --------------------------------------------------------------------------- #
34
+ module Crown
35
+ module Topsy
36
+ require 'cgi'
37
+ require 'net/http'
38
+ require 'crown/http'
39
+ require 'rubygems'
40
+ require 'json'
41
+ Net::HTTP.version_1_2
42
+
43
+ # ------------------------------------------------------------------- #
44
+ # count
45
+ # ------------------------------------------------------------------- #
46
+ def count(uri, proxy_host = nil, proxy_port = nil)
47
+ begin
48
+ session = Net::HTTP.new("otter.topsy.com", 80, proxy_host, proxy_port)
49
+ path = "urlinfo.json?url=" + CGI.escape(uri)
50
+ response = Crown::HTTP.get(session, path)
51
+ return nil if (response == nil || response.code.to_i != 200)
52
+
53
+ json = JSON.parse(response.body)
54
+ return json["response"]["trackback_total"].to_i
55
+ rescue Exception
56
+ return 0
57
+ end
58
+ end
59
+
60
+ module_function :count
61
+ end # Topsy
62
+ end # Crown
@@ -0,0 +1,62 @@
1
+ # -*- coding: utf-8 -*-
2
+ # --------------------------------------------------------------------------- #
3
+ #
4
+ # tweetmeme.rb
5
+ #
6
+ # Copyright (c) 2008 - 2011, clown.
7
+ #
8
+ # Redistribution and use in source and binary forms, with or without
9
+ # modification, are permitted provided that the following conditions
10
+ # are met:
11
+ #
12
+ # - Redistributions of source code must retain the above copyright
13
+ # notice, this list of conditions and the following disclaimer.
14
+ # - Redistributions in binary form must reproduce the above copyright
15
+ # notice, this list of conditions and the following disclaimer in the
16
+ # documentation and/or other materials provided with the distribution.
17
+ # - No names of its contributors may be used to endorse or promote
18
+ # products derived from this software without specific prior written
19
+ # permission.
20
+ #
21
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
27
+ # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28
+ # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30
+ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31
+ # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
+ #
33
+ # --------------------------------------------------------------------------- #
34
+ module Crown
35
+ module TweetMeme
36
+ require 'cgi'
37
+ require 'net/http'
38
+ require 'crown/http'
39
+ require 'rubygems'
40
+ require 'json'
41
+ Net::HTTP.version_1_2
42
+
43
+ # ------------------------------------------------------------------- #
44
+ # count
45
+ # ------------------------------------------------------------------- #
46
+ def count(uri, proxy_host = nil, proxy_port = nil)
47
+ begin
48
+ session = Net::HTTP.new("api.tweetmeme.com", 80, proxy_host, proxy_port)
49
+ path = "/url_info.json?url=" + CGI.escape(uri)
50
+ response = Crown::HTTP.get(session, path)
51
+ return nil if (response == nil || response.code.to_i != 200)
52
+
53
+ json = JSON.parse(response.body)
54
+ return json["story"]["url_count"].to_i
55
+ rescue Exception => e
56
+ return 0
57
+ end
58
+ end
59
+
60
+ module_function :count
61
+ end # TweetMeme
62
+ end # Crown
data/lib/crown/twitter.rb CHANGED
@@ -32,13 +32,14 @@
32
32
  #
33
33
  # --------------------------------------------------------------------------- #
34
34
  module Crown
35
- require 'net/http'
36
- require 'crown/http'
37
- require 'rubygems'
38
- require 'json'
39
- Net::HTTP.version_1_2
40
-
41
35
  module Twitter
36
+ require 'cgi'
37
+ require 'net/http'
38
+ require 'crown/http'
39
+ require 'rubygems'
40
+ require 'json'
41
+ Net::HTTP.version_1_2
42
+
42
43
  # ------------------------------------------------------------------- #
43
44
  # structures
44
45
  # ------------------------------------------------------------------- #
@@ -47,10 +48,10 @@ module Crown
47
48
  # ------------------------------------------------------------------- #
48
49
  # count
49
50
  # ------------------------------------------------------------------- #
50
- def count(screen_name)
51
+ def count(screen_name, proxy_host = nil, proxy_port = nil)
51
52
  begin
52
- session = Net::HTTP.new("api.twitter.com", 80)
53
- path = "/1/users/show.json?screen_name=" + screen_name
53
+ session = Net::HTTP.new("api.twitter.com", 80, proxy_host, proxy_port)
54
+ path = "/1/users/show.json?screen_name=" + CGI.escape(screen_name)
54
55
  response = Crown::HTTP.get(session, path)
55
56
  return nil if (response == nil || response.code.to_i != 200)
56
57
 
@@ -65,8 +66,6 @@ module Crown
65
66
  rescue Exception
66
67
  return nil
67
68
  end
68
-
69
- return nil
70
69
  end
71
70
 
72
71
  module_function :count
@@ -49,7 +49,8 @@ module Crown
49
49
  # を指定する.
50
50
  #
51
51
  # --------------------------------------------------------------- #
52
- def count(uri, session = Net::HTTP.new('num.bookmarks.yahoo.co.jp', 80))
52
+ def count(uri, proxy_host = nil, proxy_port = nil)
53
+ session = Net::HTTP.new('num.bookmarks.yahoo.co.jp', 80, proxy_host, proxy_port)
53
54
  path = '/yjnostb.php?urls=' + CGI.escape(uri)
54
55
 
55
56
  begin
data/test/crown_test.rb CHANGED
@@ -95,6 +95,47 @@ class CrownTest < Test::Unit::TestCase
95
95
  }
96
96
  end
97
97
 
98
+ # ----------------------------------------------------------------------- #
99
+ # test_facebook_count
100
+ # ----------------------------------------------------------------------- #
101
+ def test_facebook_count
102
+ @@valid_uris.each { |uri|
103
+ counter = Crown::Facebook.count(uri)
104
+ assert(counter != nil, "failed in Crown::Facebook.count: " + uri)
105
+ assert(counter.like > 0, "wrong like count: " + uri)
106
+ assert(counter.total > 0, "wrong total count: " + uri)
107
+ assert(counter.share > 0, "wrong share count: " + uri)
108
+ assert(counter.click > 0, "wrong click count: " + uri)
109
+ }
110
+ end
111
+
112
+ # ----------------------------------------------------------------------- #
113
+ # test_topsy_count
114
+ # ----------------------------------------------------------------------- #
115
+ def test_topsy_count
116
+ @@valid_uris.each { |uri|
117
+ assert(Crown::Topsy.count(uri) > 0, "failed in " + uri)
118
+ }
119
+ end
120
+
121
+ # ----------------------------------------------------------------------- #
122
+ # test_tweetmeme_count
123
+ # ----------------------------------------------------------------------- #
124
+ def test_tweetmeme_count
125
+ @@valid_uris.each { |uri|
126
+ assert(Crown::TweetMeme.count(uri) > 0, "failed in " + uri)
127
+ }
128
+ end
129
+
130
+ # ----------------------------------------------------------------------- #
131
+ # test_backtype_count
132
+ # ----------------------------------------------------------------------- #
133
+ def test_backtype_count
134
+ @@valid_uris.each { |uri|
135
+ assert(Crown::BackType.count(uri, "your_api_key") > 0, "failed in " + uri)
136
+ }
137
+ end
138
+
98
139
  # ----------------------------------------------------------------------- #
99
140
  # test_twitter_count
100
141
  # ----------------------------------------------------------------------- #
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crown
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 27
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 1
10
- version: 0.0.1
9
+ - 2
10
+ version: 0.0.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - clown
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-02-18 00:00:00 +09:00
18
+ date: 2011-02-19 00:00:00 +09:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -51,15 +51,18 @@ files:
51
51
  - Rakefile
52
52
  - VERSION
53
53
  - crown.gemspec
54
- - lib/crown.gemspec
55
54
  - lib/crown.rb
55
+ - lib/crown/backtype.rb
56
56
  - lib/crown/buzzurl.rb
57
57
  - lib/crown/delicious.rb
58
+ - lib/crown/facebook.rb
58
59
  - lib/crown/hatena.rb
59
60
  - lib/crown/hatena/bookmark.rb
60
61
  - lib/crown/http.rb
61
62
  - lib/crown/livedoor.rb
62
63
  - lib/crown/livedoor/clip.rb
64
+ - lib/crown/topsy.rb
65
+ - lib/crown/tweetmeme.rb
63
66
  - lib/crown/twitter.rb
64
67
  - lib/crown/yahoo.rb
65
68
  - lib/crown/yahoo/bookmark.rb
data/lib/crown.gemspec DELETED
File without changes