clever-ruby 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,54 @@
1
+ require 'test_helper'
2
+
3
+ class ListTest < Test::Unit::TestCase
4
+ def setup
5
+ Clever.configure do |config|
6
+ config.api_key = "DEMO_KEY"
7
+ end
8
+ end
9
+
10
+ should "retrieve districts" do
11
+ VCR.use_cassette("districts") do
12
+ @districts = Clever::District.all
13
+ end
14
+
15
+ @districts.count.must_equal 1
16
+ end
17
+
18
+ should "retrieve schools" do
19
+ VCR.use_cassette("schools") do
20
+ @schools = Clever::School.all
21
+ end
22
+
23
+ @schools.count.must_equal 4
24
+ end
25
+
26
+ should "retrieve students" do
27
+ VCR.use_cassette("students") do
28
+ @students = Clever::Student.all
29
+ end
30
+
31
+ @students.count.must_equal 100
32
+ end
33
+
34
+ should "retrieve sections" do
35
+ VCR.use_cassette("sections") do
36
+ @sections = Clever::Section.all
37
+ end
38
+
39
+ @sections.count.must_equal 44
40
+ end
41
+
42
+ should "retrieve teachers" do
43
+ VCR.use_cassette("teachers") do
44
+ @teachers = Clever::Teacher.all
45
+
46
+ @teachers.each do |teacher|
47
+ teacher_obj = Clever::Teacher.retrieve teacher.id
48
+ assert_instance_of(Clever::Teacher, teacher)
49
+ assert_instance_of(Clever::Teacher, teacher_obj)
50
+ assert_equal(teacher, teacher_obj)
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,10 @@
1
+ require 'minitest/autorun'
2
+ require 'shoulda'
3
+ require 'vcr'
4
+ require 'clever-ruby'
5
+
6
+
7
+ VCR.configure do |c|
8
+ c.cassette_library_dir = 'test/data/vcr_cassettes'
9
+ c.hook_into :webmock
10
+ end
@@ -0,0 +1,17 @@
1
+ require 'test_helper'
2
+
3
+ class CleverTest < Test::Unit::TestCase
4
+ def setup
5
+ Clever.configure do |config|
6
+ config.api_key = "DEMO_KEY"
7
+ end
8
+ end
9
+
10
+ should "return api urls" do
11
+ assert_equal("https://api.getclever.com/v1.1/districts", Clever.api_url("districts"))
12
+ assert_equal("https://api.getclever.com/v1.1/schools", Clever.api_url("schools"))
13
+ assert_equal("https://api.getclever.com/v1.1/students", Clever.api_url("students"))
14
+ assert_equal("https://api.getclever.com/v1.1/sections", Clever.api_url("sections"))
15
+ assert_equal("https://api.getclever.com/v1.1/teachers", Clever.api_url("teachers"))
16
+ end
17
+ end
@@ -0,0 +1,22 @@
1
+ require 'test_helper'
2
+
3
+ class CleverConfigurationTest < Test::Unit::TestCase
4
+
5
+ should "set the api key" do
6
+ Clever.configure do |config|
7
+ config.api_key = "DEMO_KEY"
8
+ end
9
+ assert_equal("DEMO_KEY", Clever.api_key)
10
+ end
11
+
12
+ should "raise an error if no api key is set" do
13
+ lambda {
14
+ Clever.request(stub, stub)
15
+ }.must_raise Clever::AuthenticationError
16
+ end
17
+
18
+ should "set a default for the api base" do
19
+ Clever.configuration.api_base.must_equal('https://api.getclever.com/v1.1/')
20
+ end
21
+
22
+ end
metadata ADDED
@@ -0,0 +1,224 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: clever-ruby
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Rafael Garcia
9
+ - Alex Zylman
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2013-02-11 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: multi_json
17
+ requirement: !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ~>
21
+ - !ruby/object:Gem::Version
22
+ version: 1.5.0
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ version: 1.5.0
31
+ - !ruby/object:Gem::Dependency
32
+ name: rest-client
33
+ requirement: !ruby/object:Gem::Requirement
34
+ none: false
35
+ requirements:
36
+ - - ~>
37
+ - !ruby/object:Gem::Version
38
+ version: 1.6.7
39
+ type: :runtime
40
+ prerelease: false
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ~>
45
+ - !ruby/object:Gem::Version
46
+ version: 1.6.7
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ - !ruby/object:Gem::Dependency
64
+ name: minitest
65
+ requirement: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ~>
69
+ - !ruby/object:Gem::Version
70
+ version: 4.4.0
71
+ type: :development
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ~>
77
+ - !ruby/object:Gem::Version
78
+ version: 4.4.0
79
+ - !ruby/object:Gem::Dependency
80
+ name: shoulda
81
+ requirement: !ruby/object:Gem::Requirement
82
+ none: false
83
+ requirements:
84
+ - - ~>
85
+ - !ruby/object:Gem::Version
86
+ version: 3.3.2
87
+ type: :development
88
+ prerelease: false
89
+ version_requirements: !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ~>
93
+ - !ruby/object:Gem::Version
94
+ version: 3.3.2
95
+ - !ruby/object:Gem::Dependency
96
+ name: rdoc
97
+ requirement: !ruby/object:Gem::Requirement
98
+ none: false
99
+ requirements:
100
+ - - ~>
101
+ - !ruby/object:Gem::Version
102
+ version: '3.12'
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: '3.12'
111
+ - !ruby/object:Gem::Dependency
112
+ name: vcr
113
+ requirement: !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - ~>
117
+ - !ruby/object:Gem::Version
118
+ version: 2.4.0
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ~>
125
+ - !ruby/object:Gem::Version
126
+ version: 2.4.0
127
+ - !ruby/object:Gem::Dependency
128
+ name: webmock
129
+ requirement: !ruby/object:Gem::Requirement
130
+ none: false
131
+ requirements:
132
+ - - ~>
133
+ - !ruby/object:Gem::Version
134
+ version: 1.9.0
135
+ type: :development
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ~>
141
+ - !ruby/object:Gem::Version
142
+ version: 1.9.0
143
+ description: Ruby bindings to the Clever API.
144
+ email:
145
+ - ruby@getclever.com
146
+ executables: []
147
+ extensions: []
148
+ extra_rdoc_files: []
149
+ files:
150
+ - .document
151
+ - .gitignore
152
+ - .travis.yml
153
+ - Gemfile
154
+ - LICENSE.txt
155
+ - README.md
156
+ - Rakefile
157
+ - clever-ruby.gemspec
158
+ - lib/clever-ruby.rb
159
+ - lib/clever-ruby/api_operations/list.rb
160
+ - lib/clever-ruby/api_resource.rb
161
+ - lib/clever-ruby/clever_object.rb
162
+ - lib/clever-ruby/configuration.rb
163
+ - lib/clever-ruby/district.rb
164
+ - lib/clever-ruby/errors/api_connection_error.rb
165
+ - lib/clever-ruby/errors/api_error.rb
166
+ - lib/clever-ruby/errors/authentication_error.rb
167
+ - lib/clever-ruby/errors/clever_error.rb
168
+ - lib/clever-ruby/errors/invalid_request_error.rb
169
+ - lib/clever-ruby/json.rb
170
+ - lib/clever-ruby/school.rb
171
+ - lib/clever-ruby/section.rb
172
+ - lib/clever-ruby/student.rb
173
+ - lib/clever-ruby/teacher.rb
174
+ - lib/clever-ruby/util.rb
175
+ - lib/clever-ruby/version.rb
176
+ - test/data/vcr_cassettes/districts.yml
177
+ - test/data/vcr_cassettes/schools.yml
178
+ - test/data/vcr_cassettes/sections.yml
179
+ - test/data/vcr_cassettes/students.yml
180
+ - test/data/vcr_cassettes/teachers.yml
181
+ - test/integration/api_operations/list_test.rb
182
+ - test/test_helper.rb
183
+ - test/unit/clever_test.rb
184
+ - test/unit/configuration_test.rb
185
+ homepage: http://github.com/Clever/clever-ruby
186
+ licenses: []
187
+ post_install_message:
188
+ rdoc_options: []
189
+ require_paths:
190
+ - lib
191
+ required_ruby_version: !ruby/object:Gem::Requirement
192
+ none: false
193
+ requirements:
194
+ - - ! '>='
195
+ - !ruby/object:Gem::Version
196
+ version: '0'
197
+ segments:
198
+ - 0
199
+ hash: -278580959744325448
200
+ required_rubygems_version: !ruby/object:Gem::Requirement
201
+ none: false
202
+ requirements:
203
+ - - ! '>='
204
+ - !ruby/object:Gem::Version
205
+ version: '0'
206
+ segments:
207
+ - 0
208
+ hash: -278580959744325448
209
+ requirements: []
210
+ rubyforge_project:
211
+ rubygems_version: 1.8.23
212
+ signing_key:
213
+ specification_version: 3
214
+ summary: Ruby bindings to the Clever API.
215
+ test_files:
216
+ - test/data/vcr_cassettes/districts.yml
217
+ - test/data/vcr_cassettes/schools.yml
218
+ - test/data/vcr_cassettes/sections.yml
219
+ - test/data/vcr_cassettes/students.yml
220
+ - test/data/vcr_cassettes/teachers.yml
221
+ - test/integration/api_operations/list_test.rb
222
+ - test/test_helper.rb
223
+ - test/unit/clever_test.rb
224
+ - test/unit/configuration_test.rb