coalescing_panda 1.0.8 → 1.0.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,5 +2,8 @@ module CoalescingPanda
2
2
  class CanvasApiAuth < ActiveRecord::Base
3
3
  validates :user_id, :api_domain, presence: true
4
4
  validates :user_id, uniqueness: {scope: :api_domain}
5
+
6
+ attr_accessible :user_id, :api_domain
5
7
  end
8
+
6
9
  end
@@ -6,10 +6,12 @@ module CoalescingPanda
6
6
  :foreign_key => :coalescing_panda_lti_account_id,
7
7
  :class_name => 'CoalescingPanda::LtiNonce'
8
8
 
9
+ attr_accessible :name, :key, :secret, :oauth2_client_id, :oauth2_client_key
10
+
9
11
  def validate_nonce(nonce, timestamp)
10
12
  cleanup_nonce
11
13
  if timestamp > 15.minutes.ago
12
- coalescing_panda_lti_nonces.create(nonce:nonce, timestamp:timestamp).persisted?
14
+ coalescing_panda_lti_nonces.create(nonce: nonce, timestamp: timestamp).persisted?
13
15
  end
14
16
  end
15
17
 
@@ -3,11 +3,12 @@ module CoalescingPanda
3
3
  validates :coalescing_panda_lti_account, :nonce, :timestamp, :presence => true
4
4
  validates :nonce, uniqueness: {scope: :coalescing_panda_lti_account}
5
5
  belongs_to :coalescing_panda_lti_account, :class_name => 'CoalescingPanda::LtiAccount'
6
- attr_accessible :nonce, :timestamp
6
+
7
+ attr_accessible :nonce, :timestamp
7
8
  end
8
9
 
9
10
  def cleanup
10
- CoalescingPanda::LtiNonce.where("coalescing_panda_lti_account_id = ? AND timestamp < ?", b.coalescing_panda_lti_account.id, 15.minutes.ago )
11
+ CoalescingPanda::LtiNonce.where("coalescing_panda_lti_account_id = ? AND timestamp < ?", b.coalescing_panda_lti_account.id, 15.minutes.ago)
11
12
  end
12
13
 
13
14
  end
@@ -32,6 +32,11 @@ module CoalescingPanda
32
32
  end
33
33
 
34
34
  def have_session?
35
+ #if this is a new lti launch flush the session
36
+ if params['tool_consumer_instance_guid']
37
+ reset_session
38
+ logger.info("resetting session params")
39
+ end
35
40
  if (session['user_id'] && session['uri'])
36
41
  uri = URI.parse(session['uri'])
37
42
  api_domain = uri.host
@@ -1,3 +1,3 @@
1
1
  module CoalescingPanda
2
- VERSION = '1.0.8'
2
+ VERSION = '1.0.9'
3
3
  end
metadata CHANGED
@@ -1,18 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coalescing_panda
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.0.9
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Nathan Mills
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-03-11 00:00:00.000000000 Z
12
+ date: 2014-03-18 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: rails
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ~>
18
20
  - !ruby/object:Gem::Version
@@ -20,6 +22,7 @@ dependencies:
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - ~>
25
28
  - !ruby/object:Gem::Version
@@ -27,20 +30,23 @@ dependencies:
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: bearcat
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - '>='
35
+ - - ! '>='
32
36
  - !ruby/object:Gem::Version
33
37
  version: '0.6'
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - '>='
43
+ - - ! '>='
39
44
  - !ruby/object:Gem::Version
40
45
  version: '0.6'
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: macaddr
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
51
  - - '='
46
52
  - !ruby/object:Gem::Version
@@ -48,6 +54,7 @@ dependencies:
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
59
  - - '='
53
60
  - !ruby/object:Gem::Version
@@ -55,34 +62,39 @@ dependencies:
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: ims-lti
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
- - - '>='
67
+ - - ! '>='
60
68
  - !ruby/object:Gem::Version
61
69
  version: '0'
62
70
  type: :runtime
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
- - - '>='
75
+ - - ! '>='
67
76
  - !ruby/object:Gem::Version
68
77
  version: '0'
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: haml-rails
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
- - - '>='
83
+ - - ! '>='
74
84
  - !ruby/object:Gem::Version
75
85
  version: '0'
76
86
  type: :runtime
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
- - - '>='
91
+ - - ! '>='
81
92
  - !ruby/object:Gem::Version
82
93
  version: '0'
83
94
  - !ruby/object:Gem::Dependency
84
95
  name: sass-rails
85
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
86
98
  requirements:
87
99
  - - ~>
88
100
  - !ruby/object:Gem::Version
@@ -90,6 +102,7 @@ dependencies:
90
102
  type: :runtime
91
103
  prerelease: false
92
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
93
106
  requirements:
94
107
  - - ~>
95
108
  - !ruby/object:Gem::Version
@@ -97,20 +110,23 @@ dependencies:
97
110
  - !ruby/object:Gem::Dependency
98
111
  name: jquery-rails
99
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
100
114
  requirements:
101
- - - '>='
115
+ - - ! '>='
102
116
  - !ruby/object:Gem::Version
103
117
  version: '0'
104
118
  type: :runtime
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
107
122
  requirements:
108
- - - '>='
123
+ - - ! '>='
109
124
  - !ruby/object:Gem::Version
110
125
  version: '0'
111
126
  - !ruby/object:Gem::Dependency
112
127
  name: coffee-rails
113
128
  requirement: !ruby/object:Gem::Requirement
129
+ none: false
114
130
  requirements:
115
131
  - - ~>
116
132
  - !ruby/object:Gem::Version
@@ -118,6 +134,7 @@ dependencies:
118
134
  type: :runtime
119
135
  prerelease: false
120
136
  version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
121
138
  requirements:
122
139
  - - ~>
123
140
  - !ruby/object:Gem::Version
@@ -125,85 +142,97 @@ dependencies:
125
142
  - !ruby/object:Gem::Dependency
126
143
  name: sqlite3
127
144
  requirement: !ruby/object:Gem::Requirement
145
+ none: false
128
146
  requirements:
129
- - - '>='
147
+ - - ! '>='
130
148
  - !ruby/object:Gem::Version
131
149
  version: '0'
132
150
  type: :development
133
151
  prerelease: false
134
152
  version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
135
154
  requirements:
136
- - - '>='
155
+ - - ! '>='
137
156
  - !ruby/object:Gem::Version
138
157
  version: '0'
139
158
  - !ruby/object:Gem::Dependency
140
159
  name: rspec-rails
141
160
  requirement: !ruby/object:Gem::Requirement
161
+ none: false
142
162
  requirements:
143
- - - '>='
163
+ - - ! '>='
144
164
  - !ruby/object:Gem::Version
145
165
  version: '0'
146
166
  type: :development
147
167
  prerelease: false
148
168
  version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
149
170
  requirements:
150
- - - '>='
171
+ - - ! '>='
151
172
  - !ruby/object:Gem::Version
152
173
  version: '0'
153
174
  - !ruby/object:Gem::Dependency
154
175
  name: shoulda-matchers
155
176
  requirement: !ruby/object:Gem::Requirement
177
+ none: false
156
178
  requirements:
157
- - - '>='
179
+ - - ! '>='
158
180
  - !ruby/object:Gem::Version
159
181
  version: '0'
160
182
  type: :development
161
183
  prerelease: false
162
184
  version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
163
186
  requirements:
164
- - - '>='
187
+ - - ! '>='
165
188
  - !ruby/object:Gem::Version
166
189
  version: '0'
167
190
  - !ruby/object:Gem::Dependency
168
191
  name: nokogiri
169
192
  requirement: !ruby/object:Gem::Requirement
193
+ none: false
170
194
  requirements:
171
- - - '>='
195
+ - - ! '>='
172
196
  - !ruby/object:Gem::Version
173
197
  version: '0'
174
198
  type: :development
175
199
  prerelease: false
176
200
  version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
177
202
  requirements:
178
- - - '>='
203
+ - - ! '>='
179
204
  - !ruby/object:Gem::Version
180
205
  version: '0'
181
206
  - !ruby/object:Gem::Dependency
182
207
  name: simplecov
183
208
  requirement: !ruby/object:Gem::Requirement
209
+ none: false
184
210
  requirements:
185
- - - '>='
211
+ - - ! '>='
186
212
  - !ruby/object:Gem::Version
187
213
  version: '0'
188
214
  type: :development
189
215
  prerelease: false
190
216
  version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
191
218
  requirements:
192
- - - '>='
219
+ - - ! '>='
193
220
  - !ruby/object:Gem::Version
194
221
  version: '0'
195
222
  - !ruby/object:Gem::Dependency
196
223
  name: debugger
197
224
  requirement: !ruby/object:Gem::Requirement
225
+ none: false
198
226
  requirements:
199
- - - '>='
227
+ - - ! '>='
200
228
  - !ruby/object:Gem::Version
201
229
  version: '0'
202
230
  type: :development
203
231
  prerelease: false
204
232
  version_requirements: !ruby/object:Gem::Requirement
233
+ none: false
205
234
  requirements:
206
- - - '>='
235
+ - - ! '>='
207
236
  - !ruby/object:Gem::Version
208
237
  version: '0'
209
238
  description:
@@ -278,8 +307,6 @@ files:
278
307
  - spec/dummy/config/routes.rb
279
308
  - spec/dummy/config.ru
280
309
  - spec/dummy/db/schema.rb
281
- - spec/dummy/db/test.sqlite3
282
- - spec/dummy/log/test.log
283
310
  - spec/dummy/public/404.html
284
311
  - spec/dummy/public/422.html
285
312
  - spec/dummy/public/500.html
@@ -290,26 +317,27 @@ files:
290
317
  - spec/spec_helper.rb
291
318
  homepage: http://www.instructure.com
292
319
  licenses: []
293
- metadata: {}
294
320
  post_install_message:
295
321
  rdoc_options: []
296
322
  require_paths:
297
323
  - lib
298
324
  required_ruby_version: !ruby/object:Gem::Requirement
325
+ none: false
299
326
  requirements:
300
- - - '>='
327
+ - - ! '>='
301
328
  - !ruby/object:Gem::Version
302
329
  version: '0'
303
330
  required_rubygems_version: !ruby/object:Gem::Requirement
331
+ none: false
304
332
  requirements:
305
- - - '>='
333
+ - - ! '>='
306
334
  - !ruby/object:Gem::Version
307
335
  version: '0'
308
336
  requirements: []
309
337
  rubyforge_project:
310
- rubygems_version: 2.0.3
338
+ rubygems_version: 1.8.23
311
339
  signing_key:
312
- specification_version: 4
340
+ specification_version: 3
313
341
  summary: Canvas LTI and OAUTH2 mountable engine
314
342
  test_files:
315
343
  - spec/controllers/coalescing_panda/lti_controller_spec.rb
@@ -341,8 +369,6 @@ test_files:
341
369
  - spec/dummy/config/routes.rb
342
370
  - spec/dummy/config.ru
343
371
  - spec/dummy/db/schema.rb
344
- - spec/dummy/db/test.sqlite3
345
- - spec/dummy/log/test.log
346
372
  - spec/dummy/public/404.html
347
373
  - spec/dummy/public/422.html
348
374
  - spec/dummy/public/500.html
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 997f72c20d914293b23ed6714792258f81cc4d4e
4
- data.tar.gz: e3c4dce999733d81a182699d21872d5a42e6b195
5
- SHA512:
6
- metadata.gz: 4d06ee5c728c397c496a9f69c9a8842e87084453efb13ba76eee442f0db3bb4b15bafbfcd6371f6370fbf50a15aa0e8aa9b451af728809c41b1bfccccd116b00
7
- data.tar.gz: b3ce2b4ac9b3d93bcee1cbbd15c2831bcf4fc516072df8942319676ac5dfa73c1b70966993d7155ee6c1e957696ce7b0a447747063f5a51e3a155cefc731f496
Binary file
@@ -1,336 +0,0 @@
1
-  (1.0ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) 
2
-  (0.9ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
3
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
4
- Migrating to CreateCoalescingPandaCanvasApiAuths (20131114150001)
5
-  (0.1ms) begin transaction
6
-  (0.3ms) CREATE TABLE "coalescing_panda_canvas_api_auths" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "user_id" varchar(255), "api_domain" varchar(255), "api_token" varchar(255), "created_at" datetime, "updated_at" datetime) 
7
- SQL (2.8ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131114150001"]]
8
-  (0.9ms) commit transaction
9
- Migrating to CreateCoalescingPandaLtiAccounts (20131118211442)
10
-  (0.1ms) begin transaction
11
-  (0.3ms) CREATE TABLE "coalescing_panda_lti_accounts" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "key" varchar(255), "secret" varchar(255), "oauth2_client_id" varchar(255), "oauth2_client_key" varchar(255), "created_at" datetime, "updated_at" datetime) 
12
- SQL (0.1ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131118211442"]]
13
-  (1.0ms) commit transaction
14
- Migrating to CreateCoalescingPandaLtiNonces (20131119165343)
15
-  (0.1ms) begin transaction
16
-  (0.3ms) CREATE TABLE "coalescing_panda_lti_nonces" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "coalescing_panda_lti_account_id" integer, "nonce" varchar(255), "timestamp" datetime) 
17
- SQL (0.1ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131119165343"]]
18
-  (0.7ms) commit transaction
19
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
20
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
21
-  (0.1ms) begin transaction
22
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
23
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
24
-  (0.1ms) rollback transaction
25
-  (0.1ms) begin transaction
26
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
27
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
28
-  (0.1ms) rollback transaction
29
-  (0.1ms) begin transaction
30
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths" ORDER BY "coalescing_panda_canvas_api_auths"."id" ASC LIMIT 1
31
-  (0.0ms) SAVEPOINT active_record_1
32
- SQL (4.2ms) INSERT INTO "coalescing_panda_canvas_api_auths" ("created_at", "updated_at", "user_id") VALUES (?, ?, ?) [["created_at", Wed, 08 Jan 2014 15:08:34 UTC +00:00], ["updated_at", Wed, 08 Jan 2014 15:08:34 UTC +00:00], ["user_id", "arbitrary_string"]]
33
-  (0.1ms) RELEASE SAVEPOINT active_record_1
34
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
35
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
36
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths"
37
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
38
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
39
-  (0.5ms) rollback transaction
40
-  (0.1ms) begin transaction
41
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
42
- Parameters: {"user_id"=>"1", "api_domain"=>"foo.com", "code"=>"bar"}
43
- CoalescingPanda::LtiAccount Load (0.2ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts" WHERE "coalescing_panda_lti_accounts"."key" IS NULL LIMIT 1
44
- Completed 500 Internal Server Error in 30ms
45
-  (0.1ms) rollback transaction
46
-  (0.1ms) begin transaction
47
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
48
- Parameters: {"error"=>"your face"}
49
- Completed 200 OK in 13ms (Views: 12.3ms | ActiveRecord: 0.0ms)
50
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_canvas_api_auths"
51
-  (0.1ms) rollback transaction
52
-  (0.1ms) begin transaction
53
-  (0.1ms) rollback transaction
54
-  (0.1ms) begin transaction
55
- Processing by CoalescingPanda::LtiController#lti_config as HTML
56
- Completed 500 Internal Server Error in 0ms
57
-  (0.1ms) rollback transaction
58
-  (0.1ms) begin transaction
59
-  (0.1ms) rollback transaction
60
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
61
-  (0.1ms) begin transaction
62
-  (0.1ms) rollback transaction
63
-  (0.1ms) begin transaction
64
-  (0.1ms) rollback transaction
65
-  (0.1ms) begin transaction
66
- Processing by CoalescingPanda::LtiController#lti_config as HTML
67
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
68
-  (0.1ms) rollback transaction
69
-  (0.1ms) begin transaction
70
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
71
- Parameters: {"error"=>"your face"}
72
- Completed 200 OK in 10ms (Views: 9.7ms | ActiveRecord: 0.0ms)
73
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_canvas_api_auths"
74
-  (0.1ms) rollback transaction
75
-  (0.1ms) begin transaction
76
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
77
- Parameters: {"user_id"=>"1", "api_domain"=>"foo.com", "code"=>"bar"}
78
- CoalescingPanda::LtiAccount Load (0.1ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts" WHERE "coalescing_panda_lti_accounts"."key" IS NULL LIMIT 1
79
- Completed 500 Internal Server Error in 9ms
80
-  (0.1ms) rollback transaction
81
-  (0.1ms) begin transaction
82
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths" ORDER BY "coalescing_panda_canvas_api_auths"."id" ASC LIMIT 1
83
-  (0.1ms) SAVEPOINT active_record_1
84
- SQL (5.7ms) INSERT INTO "coalescing_panda_canvas_api_auths" ("created_at", "updated_at", "user_id") VALUES (?, ?, ?) [["created_at", Wed, 08 Jan 2014 15:10:28 UTC +00:00], ["updated_at", Wed, 08 Jan 2014 15:10:28 UTC +00:00], ["user_id", "arbitrary_string"]]
85
-  (0.1ms) RELEASE SAVEPOINT active_record_1
86
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
87
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
88
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths"
89
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
90
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
91
-  (0.7ms) rollback transaction
92
-  (0.1ms) begin transaction
93
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
94
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
95
-  (0.1ms) rollback transaction
96
-  (0.1ms) begin transaction
97
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
98
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
99
-  (0.1ms) rollback transaction
100
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
101
-  (0.1ms) begin transaction
102
-  (0.1ms) rollback transaction
103
-  (0.1ms) begin transaction
104
- Processing by CoalescingPanda::LtiController#lti_config as HTML
105
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
106
-  (0.1ms) rollback transaction
107
-  (0.1ms) begin transaction
108
- Processing by CoalescingPanda::LtiController#lti_config as HTML
109
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
110
-  (0.1ms) rollback transaction
111
-  (0.1ms) begin transaction
112
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths" ORDER BY "coalescing_panda_canvas_api_auths"."id" ASC LIMIT 1
113
-  (0.0ms) SAVEPOINT active_record_1
114
- SQL (5.7ms) INSERT INTO "coalescing_panda_canvas_api_auths" ("created_at", "updated_at", "user_id") VALUES (?, ?, ?) [["created_at", Wed, 08 Jan 2014 15:12:07 UTC +00:00], ["updated_at", Wed, 08 Jan 2014 15:12:07 UTC +00:00], ["user_id", "arbitrary_string"]]
115
-  (0.1ms) RELEASE SAVEPOINT active_record_1
116
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
117
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
118
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths"
119
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
120
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
121
-  (0.6ms) rollback transaction
122
-  (0.1ms) begin transaction
123
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
124
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
125
-  (0.1ms) rollback transaction
126
-  (0.1ms) begin transaction
127
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
128
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
129
-  (0.1ms) rollback transaction
130
-  (0.1ms) begin transaction
131
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
132
- Parameters: {"error"=>"your face"}
133
- Completed 200 OK in 10ms (Views: 9.9ms | ActiveRecord: 0.0ms)
134
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_canvas_api_auths"
135
-  (0.1ms) rollback transaction
136
-  (0.1ms) begin transaction
137
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
138
- Parameters: {"user_id"=>"1", "api_domain"=>"foo.com", "code"=>"bar"}
139
- CoalescingPanda::LtiAccount Load (0.1ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts" WHERE "coalescing_panda_lti_accounts"."key" IS NULL LIMIT 1
140
- Completed 500 Internal Server Error in 8ms
141
-  (0.1ms) rollback transaction
142
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
143
-  (0.1ms) begin transaction
144
-  (0.1ms) rollback transaction
145
-  (0.1ms) begin transaction
146
- Processing by CoalescingPanda::LtiController#lti_config as HTML
147
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
148
-  (0.1ms) rollback transaction
149
-  (0.1ms) begin transaction
150
-  (0.1ms) rollback transaction
151
-  (0.1ms) begin transaction
152
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths" ORDER BY "coalescing_panda_canvas_api_auths"."id" ASC LIMIT 1
153
-  (0.0ms) SAVEPOINT active_record_1
154
- SQL (5.6ms) INSERT INTO "coalescing_panda_canvas_api_auths" ("created_at", "updated_at", "user_id") VALUES (?, ?, ?) [["created_at", Wed, 08 Jan 2014 15:17:23 UTC +00:00], ["updated_at", Wed, 08 Jan 2014 15:17:23 UTC +00:00], ["user_id", "arbitrary_string"]]
155
-  (0.1ms) RELEASE SAVEPOINT active_record_1
156
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
157
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
158
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths"
159
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
160
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
161
-  (1.5ms) rollback transaction
162
-  (0.1ms) begin transaction
163
- CoalescingPanda::CanvasApiAuth Exists (0.2ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
164
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
165
-  (0.1ms) rollback transaction
166
-  (0.1ms) begin transaction
167
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
168
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
169
-  (0.1ms) rollback transaction
170
-  (0.1ms) begin transaction
171
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
172
- Parameters: {"user_id"=>"1", "api_domain"=>"foo.com", "code"=>"bar"}
173
- CoalescingPanda::LtiAccount Load (0.1ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts" WHERE "coalescing_panda_lti_accounts"."key" IS NULL LIMIT 1
174
- Completed 500 Internal Server Error in 29ms
175
-  (0.1ms) rollback transaction
176
-  (0.1ms) begin transaction
177
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
178
- Parameters: {"error"=>"your face"}
179
- Completed 200 OK in 10ms (Views: 9.6ms | ActiveRecord: 0.0ms)
180
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_canvas_api_auths"
181
-  (0.1ms) rollback transaction
182
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
183
-  (0.1ms) begin transaction
184
-  (0.1ms) rollback transaction
185
-  (0.1ms) begin transaction
186
- Processing by CoalescingPanda::LtiController#lti_config as HTML
187
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
188
-  (0.1ms) rollback transaction
189
-  (0.1ms) begin transaction
190
- Processing by CoalescingPanda::LtiController#lti_config as HTML
191
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
192
-  (0.1ms) rollback transaction
193
-  (0.1ms) begin transaction
194
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths" ORDER BY "coalescing_panda_canvas_api_auths"."id" ASC LIMIT 1
195
-  (0.0ms) SAVEPOINT active_record_1
196
- SQL (5.6ms) INSERT INTO "coalescing_panda_canvas_api_auths" ("created_at", "updated_at", "user_id") VALUES (?, ?, ?) [["created_at", Wed, 08 Jan 2014 15:21:24 UTC +00:00], ["updated_at", Wed, 08 Jan 2014 15:21:24 UTC +00:00], ["user_id", "arbitrary_string"]]
197
-  (0.1ms) RELEASE SAVEPOINT active_record_1
198
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
199
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
200
- CoalescingPanda::CanvasApiAuth Load (0.1ms) SELECT "coalescing_panda_canvas_api_auths".* FROM "coalescing_panda_canvas_api_auths"
201
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
202
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" = 'arbitrary_string' AND "coalescing_panda_canvas_api_auths"."api_domain" = '1') LIMIT 1
203
-  (1.8ms) rollback transaction
204
-  (0.1ms) begin transaction
205
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
206
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
207
-  (0.1ms) rollback transaction
208
-  (0.1ms) begin transaction
209
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
210
- CoalescingPanda::CanvasApiAuth Exists (0.1ms) SELECT 1 AS one FROM "coalescing_panda_canvas_api_auths" WHERE ("coalescing_panda_canvas_api_auths"."user_id" IS NULL AND "coalescing_panda_canvas_api_auths"."api_domain" IS NULL) LIMIT 1
211
-  (0.1ms) rollback transaction
212
-  (0.1ms) begin transaction
213
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
214
- Parameters: {"user_id"=>"1", "api_domain"=>"foo.com", "code"=>"bar"}
215
- CoalescingPanda::LtiAccount Load (0.1ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts" WHERE "coalescing_panda_lti_accounts"."key" IS NULL LIMIT 1
216
- Completed 500 Internal Server Error in 8ms
217
-  (0.1ms) rollback transaction
218
-  (0.1ms) begin transaction
219
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
220
- Parameters: {"error"=>"your face"}
221
- Completed 200 OK in 10ms (Views: 9.5ms | ActiveRecord: 0.0ms)
222
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_canvas_api_auths"
223
-  (0.1ms) rollback transaction
224
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
225
-  (0.1ms) begin transaction
226
-  (0.1ms) rollback transaction
227
-  (0.1ms) begin transaction
228
- Processing by CoalescingPanda::LtiController#lti_config as HTML
229
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
230
-  (0.1ms) rollback transaction
231
-  (0.1ms) begin transaction
232
- Processing by CoalescingPanda::LtiController#lti_config as HTML
233
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
234
-  (0.1ms) rollback transaction
235
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
236
-  (0.1ms) begin transaction
237
-  (0.1ms) rollback transaction
238
-  (0.1ms) begin transaction
239
- Processing by CoalescingPanda::LtiController#lti_config as HTML
240
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
241
-  (0.1ms) rollback transaction
242
-  (0.1ms) begin transaction
243
- Processing by CoalescingPanda::LtiController#lti_config as HTML
244
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
245
-  (0.1ms) rollback transaction
246
- ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
247
-  (0.1ms) begin transaction
248
-  (0.1ms) rollback transaction
249
-  (0.1ms) begin transaction
250
- Processing by CoalescingPanda::LtiController#lti_config as HTML
251
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
252
-  (0.1ms) rollback transaction
253
-  (0.1ms) begin transaction
254
- Processing by CoalescingPanda::LtiController#lti_config as HTML
255
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
256
-  (0.1ms) rollback transaction
257
- ActiveRecord::SchemaMigration Load (0.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
258
-  (0.1ms) begin transaction
259
-  (0.1ms) rollback transaction
260
-  (0.1ms) begin transaction
261
- Processing by CoalescingPanda::LtiController#lti_config as HTML
262
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
263
-  (0.1ms) rollback transaction
264
-  (0.1ms) begin transaction
265
- Processing by CoalescingPanda::LtiController#lti_config as HTML
266
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
267
- ActiveRecord::SchemaMigration Load (0.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
268
-  (0.1ms) begin transaction
269
-  (0.1ms) rollback transaction
270
-  (0.1ms) begin transaction
271
- Processing by CoalescingPanda::LtiController#lti_config as HTML
272
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
273
-  (0.1ms) rollback transaction
274
-  (0.1ms) begin transaction
275
- Processing by CoalescingPanda::LtiController#lti_config as HTML
276
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
277
-  (0.1ms) rollback transaction
278
- ActiveRecord::SchemaMigration Load (0.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
279
-  (0.1ms) begin transaction
280
-  (0.1ms) rollback transaction
281
-  (0.1ms) begin transaction
282
- Processing by CoalescingPanda::LtiController#lti_config as HTML
283
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
284
-  (0.1ms) rollback transaction
285
-  (0.1ms) begin transaction
286
- Processing by CoalescingPanda::LtiController#lti_config as HTML
287
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
288
-  (0.1ms) rollback transaction
289
- ActiveRecord::SchemaMigration Load (0.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
290
-  (0.1ms) begin transaction
291
-  (0.1ms) rollback transaction
292
-  (0.1ms) begin transaction
293
-  (0.1ms) rollback transaction
294
-  (0.1ms) begin transaction
295
- Processing by CoalescingPanda::LtiController#lti_config as HTML
296
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
297
-  (0.1ms) rollback transaction
298
- ActiveRecord::SchemaMigration Load (0.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
299
-  (0.1ms) begin transaction
300
-  (0.1ms) rollback transaction
301
-  (0.1ms) begin transaction
302
- Processing by CoalescingPanda::LtiController#lti_config as HTML
303
- Completed 200 OK in 2ms (Views: 0.1ms | ActiveRecord: 0.0ms)
304
-  (0.1ms) rollback transaction
305
-  (0.1ms) begin transaction
306
- Processing by CoalescingPanda::LtiController#lti_config as HTML
307
- Completed 200 OK in 1ms (Views: 0.1ms | ActiveRecord: 0.0ms)
308
-  (0.1ms) rollback transaction
309
- ActiveRecord::SchemaMigration Load (0.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
310
-  (0.1ms) begin transaction
311
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
312
- Parameters: {"user_id"=>"1", "api_domain"=>"foo.com", "code"=>"bar"}
313
- CoalescingPanda::LtiAccount Load (0.1ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts" WHERE "coalescing_panda_lti_accounts"."key" IS NULL LIMIT 1
314
- Completed 500 Internal Server Error in 10ms
315
-  (0.1ms) rollback transaction
316
-  (0.1ms) begin transaction
317
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
318
- Parameters: {"error"=>"your face"}
319
- Completed 200 OK in 39ms (Views: 38.7ms | ActiveRecord: 0.0ms)
320
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_canvas_api_auths"
321
-  (0.1ms) rollback transaction
322
- ActiveRecord::SchemaMigration Load (0.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
323
-  (0.1ms) begin transaction
324
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
325
- Parameters: {"user_id"=>"1", "api_domain"=>"foo.com", "code"=>"bar"}
326
- CoalescingPanda::LtiAccount Load (0.2ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts"
327
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_lti_accounts"
328
- CoalescingPanda::LtiAccount Load (0.2ms) SELECT "coalescing_panda_lti_accounts".* FROM "coalescing_panda_lti_accounts" WHERE "coalescing_panda_lti_accounts"."key" IS NULL LIMIT 1
329
- Completed 500 Internal Server Error in 441449ms
330
-  (0.1ms) rollback transaction
331
-  (0.1ms) begin transaction
332
- Processing by CoalescingPanda::Oauth2Controller#redirect as HTML
333
- Parameters: {"error"=>"your face"}
334
- Completed 200 OK in 40ms (Views: 39.7ms | ActiveRecord: 0.0ms)
335
-  (0.1ms) SELECT COUNT(*) FROM "coalescing_panda_canvas_api_auths"
336
-  (0.1ms) rollback transaction