coalescing_panda 1.1.21.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,24 @@
1
+ FactoryGirl.define do
2
+ factory :account, class: CoalescingPanda::LtiAccount do
3
+ sequence :name do |n|
4
+ "Account #{n}"
5
+ end
6
+
7
+ sequence :key do |n|
8
+ "Key #{n}"
9
+ end
10
+
11
+ sequence :secret do |n|
12
+ "Account #{n}"
13
+ end
14
+
15
+ sequence :canvas_account_id do |n|
16
+ "#{n}"
17
+ end
18
+
19
+ oauth2_client_id "1234"
20
+ oauth2_client_key "thisisadeveloperkey"
21
+ settings { {base_url: "http://localhost:3000", account_admin_api_token: "9q2083uy4poiahjfgpoawy"} }
22
+
23
+ end
24
+ end
@@ -0,0 +1,9 @@
1
+ FactoryGirl.define do
2
+ factory :canvas_api_auth, class: CoalescingPanda::CanvasApiAuth do
3
+ user_id 'abcd'
4
+ api_domain 'test.example'
5
+ api_token 'token'
6
+ refresh_token 'token'
7
+ expires_at { 1.day.from_now }
8
+ end
9
+ end
@@ -6,6 +6,16 @@ describe CoalescingPanda::CanvasApiAuth do
6
6
  it { should validate_presence_of(:user_id)}
7
7
  it {should validate_presence_of(:api_domain)}
8
8
 
9
+ describe '#expired?' do
10
+ let(:auth) { FactoryGirl.create :canvas_api_auth }
9
11
 
12
+ it 'is not expired if expires_at is null or in the future' do
13
+ auth.expires_at = nil
14
+ expect(auth.expired?).to be_falsey
15
+ auth.expires_at = 1.hour.ago
16
+ expect(auth.expired?).to be_truthy
17
+ auth.expires_at = 1.hour.from_now
18
+ expect(auth.expired?).to be_falsey
19
+ end
20
+ end
10
21
  end
11
-
data/spec/spec_helper.rb CHANGED
@@ -2,10 +2,11 @@ ENV["RAILS_ENV"] ||= 'test'
2
2
  require File.expand_path("../dummy/config/environment.rb", __FILE__)
3
3
  require 'rspec/rails'
4
4
  require 'rspec/autorun'
5
- require 'shoulda/matchers/integrations/rspec'
5
+ require 'shoulda/matchers'
6
6
  require 'nokogiri'
7
7
  require 'haml'
8
8
  require 'simplecov'
9
+ require 'factory_girl_rails'
9
10
 
10
11
  SimpleCov.start
11
12
 
metadata CHANGED
@@ -1,43 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coalescing_panda
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.21.1
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Mills
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-04 00:00:00.000000000 Z
11
+ date: 2015-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: 4.0.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: 4.0.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bearcat
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: 0.9.20
33
+ version: 1.2.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
- version: 0.9.20
40
+ version: 1.2.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: macaddr
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -56,238 +56,224 @@ dependencies:
56
56
  name: ims-lti
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - '>='
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: haml-rails
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - '>='
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: sass-rails
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ~>
88
88
  - !ruby/object:Gem::Version
89
89
  version: 4.0.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ~>
95
95
  - !ruby/object:Gem::Version
96
96
  version: 4.0.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: jquery-rails
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - '>='
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - '>='
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: coffee-rails
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ~>
116
116
  - !ruby/object:Gem::Version
117
117
  version: 4.0.0
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ~>
123
123
  - !ruby/object:Gem::Version
124
124
  version: 4.0.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: protected_attributes
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ">="
129
+ - - '>='
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ">="
136
+ - - '>='
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: p3p
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ">="
143
+ - - '>='
144
144
  - !ruby/object:Gem::Version
145
145
  version: '0'
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - ">="
150
+ - - '>='
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: useragent
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ">="
157
+ - - '>='
158
158
  - !ruby/object:Gem::Version
159
159
  version: '0'
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - ">="
164
+ - - '>='
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0'
167
167
  - !ruby/object:Gem::Dependency
168
- name: browser
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - "<"
172
- - !ruby/object:Gem::Version
173
- version: 2.0.0
174
- type: :runtime
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - "<"
179
- - !ruby/object:Gem::Version
180
- version: 2.0.0
181
- - !ruby/object:Gem::Dependency
182
- name: secure_headers
168
+ name: sqlite3
183
169
  requirement: !ruby/object:Gem::Requirement
184
170
  requirements:
185
- - - ">="
171
+ - - '>='
186
172
  - !ruby/object:Gem::Version
187
173
  version: '0'
188
- type: :runtime
174
+ type: :development
189
175
  prerelease: false
190
176
  version_requirements: !ruby/object:Gem::Requirement
191
177
  requirements:
192
- - - ">="
178
+ - - '>='
193
179
  - !ruby/object:Gem::Version
194
180
  version: '0'
195
181
  - !ruby/object:Gem::Dependency
196
- name: sqlite3
182
+ name: rspec-rails
197
183
  requirement: !ruby/object:Gem::Requirement
198
184
  requirements:
199
- - - ">="
185
+ - - '>='
200
186
  - !ruby/object:Gem::Version
201
187
  version: '0'
202
188
  type: :development
203
189
  prerelease: false
204
190
  version_requirements: !ruby/object:Gem::Requirement
205
191
  requirements:
206
- - - ">="
192
+ - - '>='
207
193
  - !ruby/object:Gem::Version
208
194
  version: '0'
209
195
  - !ruby/object:Gem::Dependency
210
- name: rspec-rails
196
+ name: shoulda-matchers
211
197
  requirement: !ruby/object:Gem::Requirement
212
198
  requirements:
213
- - - ">="
199
+ - - '>='
214
200
  - !ruby/object:Gem::Version
215
201
  version: '0'
216
202
  type: :development
217
203
  prerelease: false
218
204
  version_requirements: !ruby/object:Gem::Requirement
219
205
  requirements:
220
- - - ">="
206
+ - - '>='
221
207
  - !ruby/object:Gem::Version
222
208
  version: '0'
223
209
  - !ruby/object:Gem::Dependency
224
- name: shoulda-matchers
210
+ name: nokogiri
225
211
  requirement: !ruby/object:Gem::Requirement
226
212
  requirements:
227
- - - ">="
213
+ - - '>='
228
214
  - !ruby/object:Gem::Version
229
215
  version: '0'
230
216
  type: :development
231
217
  prerelease: false
232
218
  version_requirements: !ruby/object:Gem::Requirement
233
219
  requirements:
234
- - - ">="
220
+ - - '>='
235
221
  - !ruby/object:Gem::Version
236
222
  version: '0'
237
223
  - !ruby/object:Gem::Dependency
238
- name: nokogiri
224
+ name: simplecov
239
225
  requirement: !ruby/object:Gem::Requirement
240
226
  requirements:
241
- - - ">="
227
+ - - '>='
242
228
  - !ruby/object:Gem::Version
243
229
  version: '0'
244
230
  type: :development
245
231
  prerelease: false
246
232
  version_requirements: !ruby/object:Gem::Requirement
247
233
  requirements:
248
- - - ">="
234
+ - - '>='
249
235
  - !ruby/object:Gem::Version
250
236
  version: '0'
251
237
  - !ruby/object:Gem::Dependency
252
- name: simplecov
238
+ name: debugger
253
239
  requirement: !ruby/object:Gem::Requirement
254
240
  requirements:
255
- - - ">="
241
+ - - '>='
256
242
  - !ruby/object:Gem::Version
257
243
  version: '0'
258
244
  type: :development
259
245
  prerelease: false
260
246
  version_requirements: !ruby/object:Gem::Requirement
261
247
  requirements:
262
- - - ">="
248
+ - - '>='
263
249
  - !ruby/object:Gem::Version
264
250
  version: '0'
265
251
  - !ruby/object:Gem::Dependency
266
- name: debugger
252
+ name: pry
267
253
  requirement: !ruby/object:Gem::Requirement
268
254
  requirements:
269
- - - ">="
255
+ - - '>='
270
256
  - !ruby/object:Gem::Version
271
257
  version: '0'
272
258
  type: :development
273
259
  prerelease: false
274
260
  version_requirements: !ruby/object:Gem::Requirement
275
261
  requirements:
276
- - - ">="
262
+ - - '>='
277
263
  - !ruby/object:Gem::Version
278
264
  version: '0'
279
265
  - !ruby/object:Gem::Dependency
280
- name: pry
266
+ name: factory_girl_rails
281
267
  requirement: !ruby/object:Gem::Requirement
282
268
  requirements:
283
- - - ">="
269
+ - - '>='
284
270
  - !ruby/object:Gem::Version
285
271
  version: '0'
286
272
  type: :development
287
273
  prerelease: false
288
274
  version_requirements: !ruby/object:Gem::Requirement
289
275
  requirements:
290
- - - ">="
276
+ - - '>='
291
277
  - !ruby/object:Gem::Version
292
278
  version: '0'
293
279
  description:
@@ -319,7 +305,6 @@ files:
319
305
  - app/models/coalescing_panda/lti_nonce.rb
320
306
  - app/models/coalescing_panda/session.rb
321
307
  - app/views/coalescing_panda/launch.html.haml
322
- - app/views/coalescing_panda/lti/iframe_cookie_fix.html.erb
323
308
  - app/views/coalescing_panda/oauth2/oauth2.html.haml
324
309
  - app/views/coalescing_panda/oauth2/redirect.html.haml
325
310
  - app/views/coalescing_panda/styleguide/styleguide.html
@@ -331,7 +316,9 @@ files:
331
316
  - db/migrate/20131119165343_create_coalescing_panda_lti_nonces.rb
332
317
  - db/migrate/20140722210735_add_settings_to_coalescing_panda_lti_account.rb
333
318
  - db/migrate/20140904223159_create_coalescing_panda_sessions.rb
319
+ - db/migrate/20151209155923_add_refresh_settings_to_canvas_api_auth.rb
334
320
  - lib/coalescing_panda.rb
321
+ - lib/coalescing_panda/bearcat_uri.rb
335
322
  - lib/coalescing_panda/controller_helpers.rb
336
323
  - lib/coalescing_panda/engine.rb
337
324
  - lib/coalescing_panda/route_helpers.rb
@@ -368,10 +355,14 @@ files:
368
355
  - spec/dummy/config/locales/en.yml
369
356
  - spec/dummy/config/routes.rb
370
357
  - spec/dummy/db/schema.rb
358
+ - spec/dummy/db/test.sqlite3
359
+ - spec/dummy/log/test.log
371
360
  - spec/dummy/public/404.html
372
361
  - spec/dummy/public/422.html
373
362
  - spec/dummy/public/500.html
374
363
  - spec/dummy/public/favicon.ico
364
+ - spec/factories/accounts.rb
365
+ - spec/factories/canvas_api_auths.rb
375
366
  - spec/models/coalescing_panda/canvas_api_auth_spec.rb
376
367
  - spec/spec_helper.rb
377
368
  homepage: http://www.instructure.com
@@ -383,54 +374,59 @@ require_paths:
383
374
  - lib
384
375
  required_ruby_version: !ruby/object:Gem::Requirement
385
376
  requirements:
386
- - - ">="
377
+ - - '>='
387
378
  - !ruby/object:Gem::Version
388
379
  version: '0'
389
380
  required_rubygems_version: !ruby/object:Gem::Requirement
390
381
  requirements:
391
- - - ">="
382
+ - - '>='
392
383
  - !ruby/object:Gem::Version
393
384
  version: '0'
394
385
  requirements: []
395
- rubygems_version: 3.1.2
386
+ rubyforge_project:
387
+ rubygems_version: 2.4.6
396
388
  signing_key:
397
389
  specification_version: 4
398
390
  summary: Canvas LTI and OAUTH2 mountable engine
399
391
  test_files:
400
- - spec/spec_helper.rb
401
- - spec/dummy/app/controllers/application_controller.rb
402
- - spec/dummy/app/views/layouts/application.html.erb
392
+ - spec/controllers/coalescing_panda/lti_controller_spec.rb
393
+ - spec/controllers/coalescing_panda/oauth2_controller_spec.rb
403
394
  - spec/dummy/app/assets/javascripts/application.js
404
395
  - spec/dummy/app/assets/stylesheets/application.css
396
+ - spec/dummy/app/controllers/application_controller.rb
405
397
  - spec/dummy/app/helpers/application_helper.rb
406
- - spec/dummy/bin/rake
398
+ - spec/dummy/app/views/layouts/application.html.erb
407
399
  - spec/dummy/bin/bundle
408
400
  - spec/dummy/bin/rails
409
- - spec/dummy/config/routes.rb
410
- - spec/dummy/config/locales/en.yml
411
- - spec/dummy/config/environments/production.rb
412
- - spec/dummy/config/environments/development.rb
413
- - spec/dummy/config/environments/test.rb
414
- - spec/dummy/config/environment.rb
401
+ - spec/dummy/bin/rake
415
402
  - spec/dummy/config/application.rb
416
- - spec/dummy/config/database.yml
417
403
  - spec/dummy/config/boot.rb
418
- - spec/dummy/config/initializers/lti_initializer.rb
404
+ - spec/dummy/config/database.yml
405
+ - spec/dummy/config/environment.rb
406
+ - spec/dummy/config/environments/development.rb
407
+ - spec/dummy/config/environments/production.rb
408
+ - spec/dummy/config/environments/test.rb
419
409
  - spec/dummy/config/initializers/backtrace_silencers.rb
420
- - spec/dummy/config/initializers/mime_types.rb
421
410
  - spec/dummy/config/initializers/filter_parameter_logging.rb
411
+ - spec/dummy/config/initializers/inflections.rb
412
+ - spec/dummy/config/initializers/lti_initializer.rb
413
+ - spec/dummy/config/initializers/mime_types.rb
414
+ - spec/dummy/config/initializers/secret_token.rb
422
415
  - spec/dummy/config/initializers/session_store.rb
423
416
  - spec/dummy/config/initializers/wrap_parameters.rb
424
- - spec/dummy/config/initializers/secret_token.rb
425
- - spec/dummy/config/initializers/inflections.rb
417
+ - spec/dummy/config/locales/en.yml
418
+ - spec/dummy/config/routes.rb
426
419
  - spec/dummy/config.ru
427
- - spec/dummy/Rakefile
428
- - spec/dummy/public/favicon.ico
420
+ - spec/dummy/db/schema.rb
421
+ - spec/dummy/db/test.sqlite3
422
+ - spec/dummy/log/test.log
423
+ - spec/dummy/public/404.html
429
424
  - spec/dummy/public/422.html
430
425
  - spec/dummy/public/500.html
431
- - spec/dummy/public/404.html
432
- - spec/dummy/db/schema.rb
426
+ - spec/dummy/public/favicon.ico
427
+ - spec/dummy/Rakefile
433
428
  - spec/dummy/README.rdoc
429
+ - spec/factories/accounts.rb
430
+ - spec/factories/canvas_api_auths.rb
434
431
  - spec/models/coalescing_panda/canvas_api_auth_spec.rb
435
- - spec/controllers/coalescing_panda/oauth2_controller_spec.rb
436
- - spec/controllers/coalescing_panda/lti_controller_spec.rb
432
+ - spec/spec_helper.rb