wtforum 0.3.0 → 0.4.1

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.
@@ -1,23 +1,23 @@
1
- # encoding: utf-8
2
-
3
1
  require "spec_helper"
4
2
 
5
- describe WTForum::User do
3
+ describe WTForum::User, vcr: true do
4
+ let(:wtforum) { test_wtforum }
5
+
6
6
  it "can CRUD users" do
7
7
  begin
8
8
  user = nil
9
9
 
10
10
  lambda {
11
- user = WTForum::User.create(
11
+ user = wtforum.create_user(
12
12
  username: "wtforum_test_user",
13
13
  email: "wtforum_test_user@example.com",
14
14
  name: "Test User",
15
15
  gender: "Male",
16
16
  location: "Portland, Oregon, USA",
17
17
  about: "I am a test user")
18
- }.should change(WTForum::User, :count).by(1)
18
+ }.should change { wtforum.count_users }.by(1)
19
19
 
20
- user = WTForum::User.find(user.id)
20
+ user = wtforum.find_user(user.id)
21
21
  user.username.should == "wtforum_test_user"
22
22
  user.email.should == "wtforum_test_user@example.com"
23
23
  user.name.should == "Test User"
@@ -33,7 +33,7 @@ describe WTForum::User do
33
33
  location: "Vancouver, BC, Canada",
34
34
  about: "I am an updated test user")
35
35
 
36
- user = WTForum::User.find_by_username("wtforum_test_user_2")
36
+ user = wtforum.find_user_by_username("wtforum_test_user_2")
37
37
  user.username.should == "wtforum_test_user_2"
38
38
  user.email.should == "wtforum_test_user_2@example.com"
39
39
  user.name.should == "Test User 2"
@@ -43,16 +43,17 @@ describe WTForum::User do
43
43
 
44
44
  ensure
45
45
  lambda {
46
- WTForum::User.destroy(user.id) rescue nil or
47
- WTForum::User.find_by_username("wtforum_test_user").destroy rescue nil or
48
- WTForum::User.find_by_username("wtforum_test_user_2").destroy rescue nil
49
- }.should change(WTForum::User, :count).by(-1)
46
+ wtforum.destroy_user(user.id) rescue nil or
47
+ wtforum.find_user_by_username("wtforum_test_user").destroy rescue nil or
48
+ wtforum.find_user_by_username("wtforum_test_user_2").destroy rescue nil
49
+ }.should change { wtforum.count_users }.by(-1)
50
50
  end
51
51
  end
52
52
 
53
53
  it "raises an exception when a user is not found" do
54
54
  lambda {
55
- WTForum::User.find(0)
55
+ wtforum.find_user(0)
56
56
  }.should raise_exception(WTForum::User::NotFound)
57
57
  end
58
58
  end
59
+
data/spec/spec_helper.rb CHANGED
@@ -1,6 +1,11 @@
1
- # encoding: utf-8
2
-
3
1
  require "wtforum"
2
+ require "vcr"
3
+
4
+ VCR.configure do |c|
5
+ c.cassette_library_dir = "spec/fixtures/vcr_cassettes"
6
+ c.hook_into :webmock
7
+ c.configure_rspec_metadata!
8
+ end
4
9
 
5
10
  begin
6
11
  require "./spec/support/credentials.rb"
@@ -8,11 +13,18 @@ rescue LoadError
8
13
  puts %(
9
14
  To run the tests, you must create a login credentials file at spec/support/credentials.rb. Example:
10
15
 
11
- WTForum.domain = "forum.example.com"
12
- WTForum.api_key = "TEgPYR4Zapz"
13
- WTForum.admin_username = "__admin_api_dont_delete__"
14
- WTForum.admin_password = "s0m3p4ssw0rd"
16
+ WTFORUM_DOMAIN = "forum.example.com"
17
+ WTFORUM_API_KEY = "TEgPYR4Zapz"
18
+ WTFORUM_ADMIN_USERNAME = "__admin_api_dont_delete__"
19
+ WTFORUM_ADMIN_PASSWORD = "s0m3p4ssw0rd"
15
20
  )
16
21
  exit
17
22
  end
18
23
 
24
+ def test_wtforum
25
+ @test_wtforum ||= WTForum.new domain: WTFORUM_DOMAIN,
26
+ api_key: WTFORUM_API_KEY,
27
+ admin_username: WTFORUM_ADMIN_USERNAME,
28
+ admin_password: WTFORUM_ADMIN_PASSWORD
29
+ end
30
+
data/wtforum.gemspec CHANGED
@@ -26,4 +26,6 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency "rake"
27
27
  spec.add_development_dependency "rspec"
28
28
  spec.add_development_dependency "debugger"
29
+ spec.add_development_dependency "vcr"
30
+ spec.add_development_dependency "webmock"
29
31
  end
metadata CHANGED
@@ -1,128 +1,141 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wtforum
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.3.0
4
+ version: 0.4.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Micah Geisel
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-05-09 00:00:00.000000000 Z
11
+ date: 2013-09-04 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
15
20
  type: :runtime
16
21
  prerelease: false
17
- name: activesupport
18
22
  version_requirements: !ruby/object:Gem::Requirement
19
23
  requirements:
20
- - - ! '>='
24
+ - - '>='
21
25
  - !ruby/object:Gem::Version
22
26
  version: '0'
23
- none: false
27
+ - !ruby/object:Gem::Dependency
28
+ name: mechanize
24
29
  requirement: !ruby/object:Gem::Requirement
25
30
  requirements:
26
- - - ! '>='
31
+ - - '>='
27
32
  - !ruby/object:Gem::Version
28
33
  version: '0'
29
- none: false
30
- - !ruby/object:Gem::Dependency
31
34
  type: :runtime
32
35
  prerelease: false
33
- name: mechanize
34
36
  version_requirements: !ruby/object:Gem::Requirement
35
37
  requirements:
36
- - - ! '>='
38
+ - - '>='
37
39
  - !ruby/object:Gem::Version
38
40
  version: '0'
39
- none: false
41
+ - !ruby/object:Gem::Dependency
42
+ name: nokogiri
40
43
  requirement: !ruby/object:Gem::Requirement
41
44
  requirements:
42
- - - ! '>='
45
+ - - '>='
43
46
  - !ruby/object:Gem::Version
44
47
  version: '0'
45
- none: false
46
- - !ruby/object:Gem::Dependency
47
48
  type: :runtime
48
49
  prerelease: false
49
- name: nokogiri
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ! '>='
52
+ - - '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
- none: false
55
+ - !ruby/object:Gem::Dependency
56
+ name: bundler
56
57
  requirement: !ruby/object:Gem::Requirement
57
58
  requirements:
58
- - - ! '>='
59
+ - - ~>
59
60
  - !ruby/object:Gem::Version
60
- version: '0'
61
- none: false
62
- - !ruby/object:Gem::Dependency
61
+ version: '1.3'
63
62
  type: :development
64
63
  prerelease: false
65
- name: bundler
66
64
  version_requirements: !ruby/object:Gem::Requirement
67
65
  requirements:
68
66
  - - ~>
69
67
  - !ruby/object:Gem::Version
70
68
  version: '1.3'
71
- none: false
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
72
71
  requirement: !ruby/object:Gem::Requirement
73
72
  requirements:
74
- - - ~>
73
+ - - '>='
75
74
  - !ruby/object:Gem::Version
76
- version: '1.3'
77
- none: false
78
- - !ruby/object:Gem::Dependency
75
+ version: '0'
79
76
  type: :development
80
77
  prerelease: false
81
- name: rake
82
78
  version_requirements: !ruby/object:Gem::Requirement
83
79
  requirements:
84
- - - ! '>='
80
+ - - '>='
85
81
  - !ruby/object:Gem::Version
86
82
  version: '0'
87
- none: false
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec
88
85
  requirement: !ruby/object:Gem::Requirement
89
86
  requirements:
90
- - - ! '>='
87
+ - - '>='
91
88
  - !ruby/object:Gem::Version
92
89
  version: '0'
93
- none: false
94
- - !ruby/object:Gem::Dependency
95
90
  type: :development
96
91
  prerelease: false
97
- name: rspec
98
92
  version_requirements: !ruby/object:Gem::Requirement
99
93
  requirements:
100
- - - ! '>='
94
+ - - '>='
101
95
  - !ruby/object:Gem::Version
102
96
  version: '0'
103
- none: false
97
+ - !ruby/object:Gem::Dependency
98
+ name: debugger
104
99
  requirement: !ruby/object:Gem::Requirement
105
100
  requirements:
106
- - - ! '>='
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '>='
107
109
  - !ruby/object:Gem::Version
108
110
  version: '0'
109
- none: false
110
111
  - !ruby/object:Gem::Dependency
112
+ name: vcr
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
111
118
  type: :development
112
119
  prerelease: false
113
- name: debugger
114
120
  version_requirements: !ruby/object:Gem::Requirement
115
121
  requirements:
116
- - - ! '>='
122
+ - - '>='
117
123
  - !ruby/object:Gem::Version
118
124
  version: '0'
119
- none: false
125
+ - !ruby/object:Gem::Dependency
126
+ name: webmock
120
127
  requirement: !ruby/object:Gem::Requirement
121
128
  requirements:
122
- - - ! '>='
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0'
125
- none: false
126
139
  description: Ruby library that wraps Website Toolbox's forum API.
127
140
  email:
128
141
  - micah@botandrose.com
@@ -132,6 +145,7 @@ extra_rdoc_files: []
132
145
  files:
133
146
  - .gitignore
134
147
  - .rspec
148
+ - .ruby-gemset
135
149
  - Gemfile
136
150
  - LICENSE.txt
137
151
  - README.md
@@ -140,42 +154,45 @@ files:
140
154
  - lib/wtforum/session.rb
141
155
  - lib/wtforum/user.rb
142
156
  - lib/wtforum/version.rb
157
+ - spec/fixtures/vcr_cassettes/WTForum_Session/when_user_doesn_t_exist/raises_an_exception.yml
158
+ - spec/fixtures/vcr_cassettes/WTForum_Session/when_user_exists/can_log_in_users.yml
159
+ - spec/fixtures/vcr_cassettes/WTForum_User/can_CRUD_users.yml
160
+ - spec/fixtures/vcr_cassettes/WTForum_User/raises_an_exception_when_a_user_is_not_found.yml
143
161
  - spec/integration/wtforum_session_spec.rb
162
+ - spec/integration/wtforum_spec.rb
144
163
  - spec/integration/wtforum_user_spec.rb
145
164
  - spec/spec_helper.rb
146
165
  - wtforum.gemspec
147
166
  homepage: https://github.com/botandrose/wtforum
148
167
  licenses:
149
168
  - MIT
169
+ metadata: {}
150
170
  post_install_message:
151
171
  rdoc_options: []
152
172
  require_paths:
153
173
  - lib
154
174
  required_ruby_version: !ruby/object:Gem::Requirement
155
175
  requirements:
156
- - - ! '>='
176
+ - - '>='
157
177
  - !ruby/object:Gem::Version
158
- hash: 2553523056140259474
159
- segments:
160
- - 0
161
178
  version: '0'
162
- none: false
163
179
  required_rubygems_version: !ruby/object:Gem::Requirement
164
180
  requirements:
165
- - - ! '>='
181
+ - - '>='
166
182
  - !ruby/object:Gem::Version
167
- hash: 2553523056140259474
168
- segments:
169
- - 0
170
183
  version: '0'
171
- none: false
172
184
  requirements: []
173
185
  rubyforge_project:
174
- rubygems_version: 1.8.25
186
+ rubygems_version: 2.0.3
175
187
  signing_key:
176
- specification_version: 3
188
+ specification_version: 4
177
189
  summary: Ruby library that wraps Website Toolbox's forum API.
178
190
  test_files:
191
+ - spec/fixtures/vcr_cassettes/WTForum_Session/when_user_doesn_t_exist/raises_an_exception.yml
192
+ - spec/fixtures/vcr_cassettes/WTForum_Session/when_user_exists/can_log_in_users.yml
193
+ - spec/fixtures/vcr_cassettes/WTForum_User/can_CRUD_users.yml
194
+ - spec/fixtures/vcr_cassettes/WTForum_User/raises_an_exception_when_a_user_is_not_found.yml
179
195
  - spec/integration/wtforum_session_spec.rb
196
+ - spec/integration/wtforum_spec.rb
180
197
  - spec/integration/wtforum_user_spec.rb
181
198
  - spec/spec_helper.rb