active_diigo 0.0.3 → 0.0.4
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 +1 -1
- data/lib/active_diigo/response_object.rb +1 -1
- data/spec/active_diigo_spec.rb +105 -0
- metadata +71 -131
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.4
|
data/spec/active_diigo_spec.rb
CHANGED
@@ -2,6 +2,56 @@ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
|
2
2
|
|
3
3
|
describe "ActiveDiigo" do
|
4
4
|
|
5
|
+
describe ActiveDiigo do
|
6
|
+
before(:all) do
|
7
|
+
ActiveDiigo.api_key = 'TEST_API_KEY'
|
8
|
+
ActiveDiigo.username = 'test-user'
|
9
|
+
ActiveDiigo.password = 'test-pass'
|
10
|
+
end
|
11
|
+
|
12
|
+
it "should have api_key as an accessor" do
|
13
|
+
ActiveDiigo.should respond_to(:api_key)
|
14
|
+
ActiveDiigo.api_key.should == 'TEST_API_KEY'
|
15
|
+
end
|
16
|
+
|
17
|
+
it "should allow to set api_key" do
|
18
|
+
ActiveDiigo.should respond_to(:api_key)
|
19
|
+
ActiveDiigo.api_key = 'TEST_API_KEY_CHANGED'
|
20
|
+
ActiveDiigo.api_key.should == 'TEST_API_KEY_CHANGED'
|
21
|
+
end
|
22
|
+
|
23
|
+
it "should have username as an accessor" do
|
24
|
+
ActiveDiigo.should respond_to(:username)
|
25
|
+
ActiveDiigo.username.should == 'test-user'
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should allow to set username" do
|
29
|
+
ActiveDiigo.should respond_to(:username)
|
30
|
+
ActiveDiigo.username = 'TEST_USER'
|
31
|
+
ActiveDiigo.username.should == 'TEST_USER'
|
32
|
+
end
|
33
|
+
|
34
|
+
it "should have password as an accessor" do
|
35
|
+
ActiveDiigo.should respond_to(:password)
|
36
|
+
ActiveDiigo.password.should == 'test-pass'
|
37
|
+
end
|
38
|
+
|
39
|
+
it "should allow to set password" do
|
40
|
+
ActiveDiigo.should respond_to(:password)
|
41
|
+
ActiveDiigo.password = 'TEST_PASS'
|
42
|
+
ActiveDiigo.password.should == 'TEST_PASS'
|
43
|
+
end
|
44
|
+
|
45
|
+
it "should respond version method" do
|
46
|
+
ActiveDiigo.should respond_to(:version)
|
47
|
+
end
|
48
|
+
|
49
|
+
it "should return current version of gem" do
|
50
|
+
ActiveDiigo.version.should == File.read(File.join(File.dirname(__FILE__), '..', 'VERSION'))
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
|
5
55
|
describe ActiveDiigo::Request do
|
6
56
|
before(:all) do
|
7
57
|
ActiveDiigo.api_key = 'TEST_API_KEY'
|
@@ -74,6 +124,61 @@ describe "ActiveDiigo" do
|
|
74
124
|
response.size.should == 10
|
75
125
|
end
|
76
126
|
|
127
|
+
it "should find bookmarks with user test-user and return 2 bookmarks" do
|
128
|
+
mock_request_for("https://test-user:test-pass@secure.diigo.com/api/v2/bookmarks?count=2&user=test-user&key=TEST_API_KEY",
|
129
|
+
:fixture => 'bookmarks_count')
|
130
|
+
|
131
|
+
response = ActiveDiigo::Base.find('test-user', :count => 2)
|
132
|
+
response.size.should == 2
|
133
|
+
end
|
134
|
+
|
135
|
+
it "should find bookmarks with specified tags" do
|
136
|
+
mock_request_for("https://test-user:test-pass@secure.diigo.com/api/v2/bookmarks?tags=mysql%2C%20rvm&user=test-user&key=TEST_API_KEY",
|
137
|
+
:fixture => 'bookmarks_with_tags')
|
138
|
+
|
139
|
+
response = ActiveDiigo::Base.find('test-user', :tags => 'mysql, rvm')
|
140
|
+
response.size.should == 1
|
141
|
+
response.first.tags.should include('mysql')
|
142
|
+
end
|
143
|
+
|
144
|
+
it "should find bookmarks that includes tags searched for" do
|
145
|
+
mock_request_for("https://test-user:test-pass@secure.diigo.com/api/v2/bookmarks?tags=mysql%2C%20rvm&user=test-user&key=TEST_API_KEY",
|
146
|
+
:fixture => 'bookmarks_with_tags')
|
147
|
+
|
148
|
+
response = ActiveDiigo::Base.find('test-user', :tags => 'mysql, rvm')
|
149
|
+
response.first.tags.should include('mysql')
|
150
|
+
response.first.tags.should include('rvm')
|
151
|
+
end
|
152
|
+
|
153
|
+
it "should save bookmark and should return success" do
|
154
|
+
mock_request_for("https://test-user:test-pass@secure.diigo.com/api/v2/bookmarks", :method => :post,
|
155
|
+
:fixture => 'save_success')
|
156
|
+
response = ActiveDiigo::Base.save('test-title', 'http://testtitle.com')
|
157
|
+
response["message"].should == "Saved 1 bookmark(s)"
|
158
|
+
response['code'].should == 1
|
159
|
+
end
|
160
|
+
|
161
|
+
it "should get ArgumentError while calling save without arguments" do
|
162
|
+
Proc.new do
|
163
|
+
response = ActiveDiigo::Base.save()
|
164
|
+
end.should raise_error(ArgumentError)
|
165
|
+
end
|
166
|
+
|
167
|
+
it "should return object of class that inherits ActiveDiigo::Base" do
|
168
|
+
class MyDiigo < ActiveDiigo::Base; end
|
169
|
+
mock_request_for("https://test-user:test-pass@secure.diigo.com/api/v2/bookmarks?user=test-user&key=TEST_API_KEY")
|
170
|
+
|
171
|
+
response = MyDiigo.find('test-user')
|
172
|
+
response.size.should == 10
|
173
|
+
response.first.should be_an_instance_of MyDiigo
|
174
|
+
end
|
175
|
+
|
176
|
+
it "should respond to all methods in class that inherits ActiveDiigo::Base" do
|
177
|
+
class MyDiigo < ActiveDiigo::Base; end
|
178
|
+
MyDiigo.should respond_to(:find)
|
179
|
+
MyDiigo.should respond_to(:save)
|
180
|
+
end
|
181
|
+
|
77
182
|
end
|
78
183
|
|
79
184
|
describe "Misc" do
|
metadata
CHANGED
@@ -1,153 +1,101 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_diigo
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 0
|
9
|
-
- 3
|
10
|
-
version: 0.0.3
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.4
|
5
|
+
prerelease:
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Bagwan Pankaj
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
22
|
-
type: :runtime
|
23
|
-
prerelease: false
|
12
|
+
date: 2011-02-02 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
24
15
|
name: httparty
|
25
|
-
|
16
|
+
requirement: &2153176140 !ruby/object:Gem::Requirement
|
26
17
|
none: false
|
27
|
-
requirements:
|
28
|
-
- -
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
|
31
|
-
segments:
|
32
|
-
- 0
|
33
|
-
version: "0"
|
34
|
-
requirement: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
36
22
|
type: :runtime
|
37
23
|
prerelease: false
|
24
|
+
version_requirements: *2153176140
|
25
|
+
- !ruby/object:Gem::Dependency
|
38
26
|
name: json
|
39
|
-
|
27
|
+
requirement: &2153175660 !ruby/object:Gem::Requirement
|
40
28
|
none: false
|
41
|
-
requirements:
|
42
|
-
- -
|
43
|
-
- !ruby/object:Gem::Version
|
44
|
-
|
45
|
-
|
46
|
-
- 0
|
47
|
-
version: "0"
|
48
|
-
requirement: *id002
|
49
|
-
- !ruby/object:Gem::Dependency
|
50
|
-
type: :development
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
type: :runtime
|
51
34
|
prerelease: false
|
35
|
+
version_requirements: *2153175660
|
36
|
+
- !ruby/object:Gem::Dependency
|
52
37
|
name: rspec
|
53
|
-
|
38
|
+
requirement: &2153175180 !ruby/object:Gem::Requirement
|
54
39
|
none: false
|
55
|
-
requirements:
|
40
|
+
requirements:
|
56
41
|
- - ~>
|
57
|
-
- !ruby/object:Gem::Version
|
58
|
-
hash: 11
|
59
|
-
segments:
|
60
|
-
- 2
|
61
|
-
- 1
|
62
|
-
- 0
|
42
|
+
- !ruby/object:Gem::Version
|
63
43
|
version: 2.1.0
|
64
|
-
requirement: *id003
|
65
|
-
- !ruby/object:Gem::Dependency
|
66
44
|
type: :development
|
67
45
|
prerelease: false
|
46
|
+
version_requirements: *2153175180
|
47
|
+
- !ruby/object:Gem::Dependency
|
68
48
|
name: yard
|
69
|
-
|
49
|
+
requirement: &2153174700 !ruby/object:Gem::Requirement
|
70
50
|
none: false
|
71
|
-
requirements:
|
51
|
+
requirements:
|
72
52
|
- - ~>
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
hash: 7
|
75
|
-
segments:
|
76
|
-
- 0
|
77
|
-
- 6
|
78
|
-
- 0
|
53
|
+
- !ruby/object:Gem::Version
|
79
54
|
version: 0.6.0
|
80
|
-
requirement: *id004
|
81
|
-
- !ruby/object:Gem::Dependency
|
82
55
|
type: :development
|
83
56
|
prerelease: false
|
57
|
+
version_requirements: *2153174700
|
58
|
+
- !ruby/object:Gem::Dependency
|
84
59
|
name: bundler
|
85
|
-
|
60
|
+
requirement: &2153174220 !ruby/object:Gem::Requirement
|
86
61
|
none: false
|
87
|
-
requirements:
|
62
|
+
requirements:
|
88
63
|
- - ~>
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
hash: 23
|
91
|
-
segments:
|
92
|
-
- 1
|
93
|
-
- 0
|
94
|
-
- 0
|
64
|
+
- !ruby/object:Gem::Version
|
95
65
|
version: 1.0.0
|
96
|
-
requirement: *id005
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
type: :development
|
99
|
-
prerelease: false
|
100
|
-
name: jeweler
|
101
|
-
version_requirements: &id006 !ruby/object:Gem::Requirement
|
102
|
-
none: false
|
103
|
-
requirements:
|
104
|
-
- - ~>
|
105
|
-
- !ruby/object:Gem::Version
|
106
|
-
hash: 7
|
107
|
-
segments:
|
108
|
-
- 1
|
109
|
-
- 5
|
110
|
-
- 2
|
111
|
-
version: 1.5.2
|
112
|
-
requirement: *id006
|
113
|
-
- !ruby/object:Gem::Dependency
|
114
66
|
type: :development
|
115
67
|
prerelease: false
|
68
|
+
version_requirements: *2153174220
|
69
|
+
- !ruby/object:Gem::Dependency
|
116
70
|
name: rcov
|
117
|
-
|
71
|
+
requirement: &2153173740 !ruby/object:Gem::Requirement
|
118
72
|
none: false
|
119
|
-
requirements:
|
120
|
-
- -
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
|
123
|
-
segments:
|
124
|
-
- 0
|
125
|
-
version: "0"
|
126
|
-
requirement: *id007
|
127
|
-
- !ruby/object:Gem::Dependency
|
73
|
+
requirements:
|
74
|
+
- - ! '>='
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
128
77
|
type: :development
|
129
78
|
prerelease: false
|
79
|
+
version_requirements: *2153173740
|
80
|
+
- !ruby/object:Gem::Dependency
|
130
81
|
name: fakeweb
|
131
|
-
|
82
|
+
requirement: &2153173260 !ruby/object:Gem::Requirement
|
132
83
|
none: false
|
133
|
-
requirements:
|
134
|
-
- -
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
description: "ActiveDiigo is a wrapper for Diigo API(version: v2)."
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
type: :development
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *2153173260
|
91
|
+
description: ! 'ActiveDiigo is a wrapper for Diigo API(version: v2).'
|
142
92
|
email: me@bagwanpankaj.com
|
143
93
|
executables: []
|
144
|
-
|
145
94
|
extensions: []
|
146
|
-
|
147
|
-
extra_rdoc_files:
|
95
|
+
extra_rdoc_files:
|
148
96
|
- LICENSE.txt
|
149
97
|
- README.markdown
|
150
|
-
files:
|
98
|
+
files:
|
151
99
|
- LICENSE.txt
|
152
100
|
- VERSION
|
153
101
|
- lib/active_diigo.rb
|
@@ -159,41 +107,33 @@ files:
|
|
159
107
|
- spec/active_diigo_spec.rb
|
160
108
|
- spec/spec_helper.rb
|
161
109
|
- spec/support/fake_web_stub.rb
|
162
|
-
has_rdoc: true
|
163
110
|
homepage: http://github.com/bagwanpankaj/active_diigo
|
164
|
-
licenses:
|
111
|
+
licenses:
|
165
112
|
- MIT
|
166
113
|
post_install_message:
|
167
114
|
rdoc_options: []
|
168
|
-
|
169
|
-
require_paths:
|
115
|
+
require_paths:
|
170
116
|
- lib
|
171
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
117
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
172
118
|
none: false
|
173
|
-
requirements:
|
174
|
-
- -
|
175
|
-
- !ruby/object:Gem::Version
|
176
|
-
|
177
|
-
|
178
|
-
- 0
|
179
|
-
version: "0"
|
180
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
|
+
requirements:
|
120
|
+
- - ! '>='
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: '0'
|
123
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
181
124
|
none: false
|
182
|
-
requirements:
|
183
|
-
- -
|
184
|
-
- !ruby/object:Gem::Version
|
185
|
-
|
186
|
-
segments:
|
187
|
-
- 0
|
188
|
-
version: "0"
|
125
|
+
requirements:
|
126
|
+
- - ! '>='
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
version: '0'
|
189
129
|
requirements: []
|
190
|
-
|
191
130
|
rubyforge_project:
|
192
|
-
rubygems_version: 1.
|
131
|
+
rubygems_version: 1.8.10
|
193
132
|
signing_key:
|
194
133
|
specification_version: 3
|
195
134
|
summary: Diigo Restful API wrapper; much like ActiveRecord
|
196
|
-
test_files:
|
135
|
+
test_files:
|
197
136
|
- spec/active_diigo_spec.rb
|
198
137
|
- spec/spec_helper.rb
|
199
138
|
- spec/support/fake_web_stub.rb
|
139
|
+
has_rdoc:
|