crown 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
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