douban-ruby 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,76 @@
1
+ require File.join(File.dirname(__FILE__), "/../spec_helper")
2
+
3
+ require 'douban/review'
4
+
5
+ module Douban
6
+ describe Review do
7
+ before do
8
+ @s = %Q{<?xml version="1.0" encoding="UTF-8"?>
9
+ <entry xmlns="http://www.w3.org/2005/Atom" xmlns:db="http://www.douban.com/xmlns/" xmlns:gd="http://schemas.google.com/g/2005" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:opensearch="http://a9.com/-/spec/opensearchrss/1.0/">
10
+ <id>http://api.douban.com/review/3391729</id>
11
+ <title>douban-ruby 单元测试</title>
12
+ <author>
13
+ <link href="http://api.douban.com/people/41502874" rel="self"/>
14
+ <link href="http://www.douban.com/people/41502874/" rel="alternate"/>
15
+ <name>SJo1pHHJGmCx</name>
16
+ <uri>http://api.douban.com/people/41502874</uri>
17
+ </author>
18
+ <published>2010-07-03T20:55:45+08:00</published>
19
+ <updated>2010-07-03T20:55:45+08:00</updated>
20
+ <link href="http://api.douban.com/review/3391729" rel="self"/>
21
+ <link href="http://www.douban.com/review/3391729/" rel="alternate"/>
22
+ <link href="http://api.douban.com/book/subject/1088840" rel="http://www.douban.com/2007#subject"/>
23
+ <content>douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试douban-ruby 单元测试</content>
24
+ <db:subject>
25
+ <id>http://api.douban.com/book/subject/1088840</id>
26
+ <title>无机化学(下)/高等学校教材</title>
27
+ <category scheme="http://www.douban.com/2007#kind" term="http://www.douban.com/2007#book"/>
28
+ <author>
29
+ <name>武汉大学、吉林大学</name>
30
+ </author>
31
+ <link href="http://api.douban.com/book/subject/1088840" rel="self"/>
32
+ <link href="http://book.douban.com/subject/1088840/" rel="alternate"/>
33
+ <link href="http://img2.douban.com/spic/s1075910.jpg" rel="image"/>
34
+ <link href="http://api.douban.com/collection/266907549" rel="collection"/>
35
+ <db:attribute name="author">武汉大学、吉林大学</db:attribute>
36
+ <db:attribute name="isbn10">7040048809</db:attribute>
37
+ <db:attribute name="isbn13">9787040048803</db:attribute>
38
+ <db:attribute name="price">26.5</db:attribute>
39
+ <db:attribute name="publisher">高等教育出版社</db:attribute>
40
+ <db:attribute name="pubdate">2005-1-1</db:attribute>
41
+ </db:subject>
42
+ <gd:rating max="5" min="1" value="5"/>
43
+ </entry>}
44
+ end
45
+
46
+ it "should correct deserialize from string" do
47
+ review = Review.new(@s)
48
+ review.id.should == "http://api.douban.com/review/3391729"
49
+ review.title.should == "douban-ruby 单元测试"
50
+ review.author.class.should == Author
51
+ review.published.should == "2010-07-03T20:55:45+08:00"
52
+ review.updated.should == "2010-07-03T20:55:45+08:00"
53
+ review.link.should == {"self"=>"http://api.douban.com/review/3391729",
54
+ "alternate"=>"http://www.douban.com/review/3391729/",
55
+ "http://www.douban.com/2007#subject"=>"http://api.douban.com/book/subject/1088840"}
56
+ review.content.should == "douban-ruby 单元测试"*10
57
+ review.subject.kind_of?(Subject).should == true
58
+ review.rating.should == {"max"=>"5", "value"=>"5", "min"=>"1"}
59
+ end
60
+
61
+ it "should support ==" do
62
+ Review.new(@s).should == Review.new(@s)
63
+ end
64
+
65
+ it "should support deserialize from REXML::Document" do
66
+ Review.new(REXML::Document.new(@s)).should == Review.new(@s)
67
+ end
68
+
69
+ it "should support deserialize from REXML::Element" do
70
+ Review.new(REXML::Document.new(@s).root).should == Review.new(@s)
71
+ end
72
+ end
73
+ end
74
+
75
+
76
+
@@ -0,0 +1,29 @@
1
+ require File.join(File.dirname(__FILE__), "/../spec_helper")
2
+
3
+ require 'douban/tag'
4
+
5
+ module Douban
6
+ describe Tag do
7
+ before do
8
+ @s = %Q{<?xml version="1.0" encoding="UTF-8"?>
9
+ <entry xmlns="http://www.w3.org/2005/Atom" xmlns:db="http://www.douban.com/xmlns/">
10
+ <id>http://api.douban.com/book/tag/罗永浩</id>
11
+ <title>罗永浩</title>
12
+ <db:count>947</db:count>
13
+ </entry>}
14
+ end
15
+
16
+ it "should correct deserialize from string" do
17
+ tag = Tag.new(@s)
18
+ tag.id.should == "http://api.douban.com/book/tag/罗永浩"
19
+ tag.title.should == "罗永浩"
20
+ tag.count.should == 947
21
+ end
22
+
23
+ it "should support Tag.new" do
24
+ Tag.new.class.should == Tag
25
+ end
26
+
27
+ end
28
+ end
29
+
@@ -0,0 +1,9 @@
1
+ require File.join(File.dirname(__FILE__), '/spec_helper')
2
+
3
+ require 'douban'
4
+
5
+ describe Douban do
6
+ it "should has a VERSION" do
7
+ Douban::VERSION.should =~ /^\d+\.\d+\.\d+(\.dev)?$/
8
+ end
9
+ end
@@ -0,0 +1,3 @@
1
+ $: << File.join(File.dirname(__FILE__), '/../lib')
2
+
3
+ require 'spec'
metadata ADDED
@@ -0,0 +1,152 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: douban-ruby
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 0
8
+ - 5
9
+ version: 0.0.5
10
+ platform: ruby
11
+ authors:
12
+ - Hoooopo
13
+ - LI Daobing
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain:
17
+ - |
18
+ -----BEGIN CERTIFICATE-----
19
+ MIIDNDCCAhygAwIBAgIBADANBgkqhkiG9w0BAQUFADBAMRIwEAYDVQQDDAlsaWRh
20
+ b2JpbmcxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
21
+ bTAeFw0xMDA3MDUwMTQyMzBaFw0xMTA3MDUwMTQyMzBaMEAxEjAQBgNVBAMMCWxp
22
+ ZGFvYmluZzEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYD
23
+ Y29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz9rM9tD8waaF+i8p
24
+ uffNz+cdxV+WzKFNCcgVxWllDL66Iu0nu8jUAo7NiCLSFxTdGs7lxn4Ae3kZFDuo
25
+ GsKnyKIYs43ymLSCpsekLKz5FQYC20PMqQG0KrvEX9Spf8NzK8G0Mx/eVXAOpftc
26
+ gEeuEuWjoIJj2i5DhP4Qb6hzbD4BxMXAXXVKfp6kmoNO2r+D5iIWtbapcnTb+0TK
27
+ raViTWxLen8Kqtl5Uv9PKwS3ina7Aw1VsE2O/VCDf/EXtejlNg5gZBCEi/MUBZiO
28
+ Ixnsmmz5dZ6GD/3x2QMMzMT5cDjajmI5Bu82iNciheEivUAOSg/FleqZ+4NwgRaX
29
+ ZFN0SwIDAQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU
30
+ z99knQ+R+sPVx9ygLg2IpRoUooYwDQYJKoZIhvcNAQEFBQADggEBAMBWOwbspUhj
31
+ uw7tMBMl9CYD6oW4+Uj0KoQINSDpp7e5ZdH6tr475CRacMozf16EQyp3KWxtPjAc
32
+ EPdQq6MsZ8EG/kAV70vyxnoiBd9L4iMn4vO6V6g8vd7v+oOuovwAmRkxV3lWJ/7J
33
+ JyNaGogxE72enpZelbGSnlkOWwyoABhywDZR+81NNRGSv03D0Th+EC7UlEKrf5wc
34
+ tVbDRYkA5s8F3oI6vYFEd18oSZIQudhIhiqq28ygrWhxwrPefi6JwD/AV/9D/Kph
35
+ nbIYUGvMgEiXY19FaZUnadkN21vz/FHjg0C8kkHqplzxOgiP9A78ngIdrFwM04fX
36
+ odexk8E9/2c=
37
+ -----END CERTIFICATE-----
38
+
39
+ date: 2010-07-05 00:00:00 +08:00
40
+ default_executable:
41
+ dependencies:
42
+ - !ruby/object:Gem::Dependency
43
+ name: rubyforge
44
+ prerelease: false
45
+ requirement: &id001 !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ segments:
50
+ - 2
51
+ - 0
52
+ - 4
53
+ version: 2.0.4
54
+ type: :development
55
+ version_requirements: *id001
56
+ - !ruby/object:Gem::Dependency
57
+ name: hoe
58
+ prerelease: false
59
+ requirement: &id002 !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ segments:
64
+ - 2
65
+ - 6
66
+ - 1
67
+ version: 2.6.1
68
+ type: :development
69
+ version_requirements: *id002
70
+ description: |-
71
+ douban ruby client. including OAuth support.
72
+
73
+ Douban API reference: http://www.douban.com/service/apidoc/reference/
74
+ email:
75
+ - hoooopo@gmail.com
76
+ - lidaobing@gmail.com
77
+ executables: []
78
+
79
+ extensions: []
80
+
81
+ extra_rdoc_files:
82
+ - History.txt
83
+ - Manifest.txt
84
+ - README.txt
85
+ files:
86
+ - History.txt
87
+ - Manifest.txt
88
+ - README.txt
89
+ - Rakefile
90
+ - examples/example.rb
91
+ - lib/douban.rb
92
+ - lib/douban/author.rb
93
+ - lib/douban/authorize.rb
94
+ - lib/douban/collection.rb
95
+ - lib/douban/equal.rb
96
+ - lib/douban/event.rb
97
+ - lib/douban/mail.rb
98
+ - lib/douban/miniblog.rb
99
+ - lib/douban/note.rb
100
+ - lib/douban/people.rb
101
+ - lib/douban/recommendation.rb
102
+ - lib/douban/recommendation_comment.rb
103
+ - lib/douban/review.rb
104
+ - lib/douban/subject.rb
105
+ - lib/douban/tag.rb
106
+ - spec/douban/author_spec.rb
107
+ - spec/douban/authorize_spec.rb
108
+ - spec/douban/collection_spec.rb
109
+ - spec/douban/event_spec.rb
110
+ - spec/douban/mail_spec.rb
111
+ - spec/douban/miniblog_spec.rb
112
+ - spec/douban/note_spec.rb
113
+ - spec/douban/people_spec.rb
114
+ - spec/douban/recommendation_comment_spec.rb
115
+ - spec/douban/recommendation_spec.rb
116
+ - spec/douban/review_spec.rb
117
+ - spec/douban/tag_spec.rb
118
+ - spec/douban_spec.rb
119
+ - spec/spec_helper.rb
120
+ has_rdoc: true
121
+ homepage: http://github.com/lidaobing/douban-ruby
122
+ licenses: []
123
+
124
+ post_install_message:
125
+ rdoc_options:
126
+ - --main
127
+ - README.txt
128
+ require_paths:
129
+ - lib
130
+ required_ruby_version: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ segments:
135
+ - 0
136
+ version: "0"
137
+ required_rubygems_version: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ segments:
142
+ - 0
143
+ version: "0"
144
+ requirements: []
145
+
146
+ rubyforge_project: douban-ruby
147
+ rubygems_version: 1.3.6
148
+ signing_key:
149
+ specification_version: 3
150
+ summary: douban ruby client
151
+ test_files: []
152
+
Binary file