coalescing_panda 5.1.8 → 5.1.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6765697774f7457358c2e1c1b4ac99f8f6bee2e2
4
- data.tar.gz: 7227f2078a10e2f52c99bf4312c5e50bfe4cd7f3
2
+ SHA256:
3
+ metadata.gz: 71ba5139ece1d7656ecc8926e5054d98f392eeb8f2265977475cfa7c5ef1b931
4
+ data.tar.gz: cb89b5b754ab22c61c8db8328352a9a1321a07fd110680929efa38c29fa44259
5
5
  SHA512:
6
- metadata.gz: 217c02e37e0f5e036cf915a439a7632631c7bfc390d9068c6b249a94affe00eef226fe15cb8b74de30bb1cba017d7298390706dcc95c6f422db3e4f546e352fe
7
- data.tar.gz: 4d7d83f6dca84bde53245c4a7c6975a3a9506677a8fcaf7fef63666e7510df1d271416fc74ed2b1029328b9d58bf59c3fdf11736c36496d4ab2b752c370bda43
6
+ metadata.gz: b7df9705ce993d7cd861ce76e8f20c89a07fac76397db16e59fc4ef1608e94020fbe662e1ab0723efe0d86d1513fb99a42419b1cce4dcfdbb0a90269998f7c88
7
+ data.tar.gz: 452340b6e59f9dcd3d8cec27975c22a2fd2f6ef1f1a99dd96486a33259cd571afe913c79a0e43ef5a476bab013ac60b7a0c83d1140be697e32b7bd6bdf64c665
@@ -3,7 +3,6 @@ module CoalescingPanda
3
3
  belongs_to :context, :polymorphic => true
4
4
  include SingleTablePolymorphic
5
5
 
6
- belongs_to :leader, foreign_key: :leader_id, class_name: 'CoalescingPanda::User'
7
6
  has_many :groups, foreign_key: :coalescing_panda_group_category_id, class_name: 'CoalescingPanda::Group'
8
7
  has_many :assignments, foreign_key: :coalescing_panda_group_category_id, class_name: 'CoalescingPanda::Assignment'
9
8
  validates :canvas_group_category_id, presence: true
@@ -106,6 +106,10 @@ module CoalescingPanda
106
106
  false
107
107
  end
108
108
 
109
+ def validate_launch!
110
+ lti_authorize!
111
+ end
112
+
109
113
  def lti_authorize!(*roles)
110
114
  authorized = false
111
115
  if (@lti_account = params['oauth_consumer_key'] && LtiAccount.find_by_key(params['oauth_consumer_key']))
@@ -1,3 +1,3 @@
1
1
  module CoalescingPanda
2
- VERSION = '5.1.8'
2
+ VERSION = '5.1.9'
3
3
  end
Binary file
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  # This file is auto-generated from the current state of the database. Instead
3
2
  # of editing this file, please use the migrations feature of Active Record to
4
3
  # incrementally modify your database, and then regenerate this schema definition.
@@ -11,263 +10,249 @@
11
10
  #
12
11
  # It's strongly recommended that you check this file into your version control system.
13
12
 
14
- ActiveRecord::Schema.define(version: 20160830183155) do
13
+ ActiveRecord::Schema.define(version: 2020_05_28_224505) do
15
14
 
16
15
  create_table "coalescing_panda_assignment_groups", force: :cascade do |t|
17
- t.integer "coalescing_panda_course_id", null: false
18
- t.integer "context_id"
19
- t.string "context_type"
20
- t.string "canvas_assignment_group_id"
21
- t.string "name"
22
- t.integer "position"
23
- t.float "group_weight"
24
- t.string "workflow_state"
16
+ t.integer "coalescing_panda_course_id", null: false
17
+ t.string "context_type"
18
+ t.integer "context_id"
19
+ t.string "canvas_assignment_group_id"
20
+ t.string "name"
21
+ t.integer "position"
22
+ t.float "group_weight"
23
+ t.string "workflow_state"
25
24
  t.datetime "created_at"
26
25
  t.datetime "updated_at"
26
+ t.index ["canvas_assignment_group_id", "context_id", "context_type"], name: "index_assignment_group_context", unique: true
27
+ t.index ["coalescing_panda_course_id", "canvas_assignment_group_id"], name: "index_assignment_group_course", unique: true
27
28
  end
28
29
 
29
- add_index "coalescing_panda_assignment_groups", ["canvas_assignment_group_id", "context_id", "context_type"], name: "index_assignment_group_context", unique: true
30
- add_index "coalescing_panda_assignment_groups", ["coalescing_panda_course_id", "canvas_assignment_group_id"], name: "index_assignment_group_course", unique: true
31
-
32
30
  create_table "coalescing_panda_assignments", force: :cascade do |t|
33
- t.integer "coalescing_panda_course_id", null: false
34
- t.string "name"
35
- t.text "description"
36
- t.string "canvas_assignment_id", null: false
37
- t.string "workflow_state"
38
- t.float "points_possible"
31
+ t.integer "coalescing_panda_course_id", null: false
32
+ t.string "name"
33
+ t.text "description"
34
+ t.string "canvas_assignment_id", null: false
35
+ t.string "workflow_state"
36
+ t.float "points_possible"
39
37
  t.datetime "due_at"
40
38
  t.datetime "unlock_at"
41
39
  t.datetime "lock_at"
42
40
  t.datetime "created_at"
43
41
  t.datetime "updated_at"
44
- t.text "submission_types"
45
- t.integer "group_category_id"
46
- t.boolean "grade_group_students_individually"
47
- t.boolean "published"
48
- t.integer "coalescing_panda_assignment_group_id"
49
- t.integer "coalescing_panda_group_category_id"
42
+ t.text "submission_types"
43
+ t.integer "group_category_id"
44
+ t.boolean "grade_group_students_individually"
45
+ t.boolean "published"
46
+ t.integer "coalescing_panda_assignment_group_id"
47
+ t.integer "coalescing_panda_group_category_id"
48
+ t.index ["coalescing_panda_course_id", "canvas_assignment_id"], name: "index_assignments_course", unique: true
50
49
  end
51
50
 
52
- add_index "coalescing_panda_assignments", ["coalescing_panda_course_id", "canvas_assignment_id"], name: "index_assignments_course", unique: true
53
-
54
51
  create_table "coalescing_panda_canvas_api_auths", force: :cascade do |t|
55
- t.string "user_id"
56
- t.string "api_domain"
57
- t.string "api_token"
52
+ t.string "user_id"
53
+ t.string "api_domain"
54
+ t.string "api_token"
58
55
  t.datetime "created_at"
59
56
  t.datetime "updated_at"
60
- t.string "refresh_token"
57
+ t.string "refresh_token"
61
58
  t.datetime "expires_at"
62
59
  end
63
60
 
64
61
  create_table "coalescing_panda_canvas_batches", force: :cascade do |t|
65
- t.float "percent_complete", default: 0.0
66
- t.string "status"
67
- t.text "message"
62
+ t.float "percent_complete", default: 0.0
63
+ t.string "status"
64
+ t.text "message"
68
65
  t.datetime "created_at"
69
66
  t.datetime "updated_at"
70
- t.integer "context_id"
71
- t.string "context_type"
72
- t.integer "coalescing_panda_lti_account_id"
73
- t.text "options"
67
+ t.integer "context_id"
68
+ t.string "context_type"
69
+ t.integer "coalescing_panda_lti_account_id"
70
+ t.text "options"
74
71
  end
75
72
 
76
73
  create_table "coalescing_panda_courses", force: :cascade do |t|
77
- t.integer "coalescing_panda_lti_account_id", null: false
78
- t.integer "coalescing_panda_term_id"
79
- t.string "name"
80
- t.string "canvas_course_id", null: false
81
- t.string "sis_id"
74
+ t.integer "coalescing_panda_lti_account_id", null: false
75
+ t.integer "coalescing_panda_term_id"
76
+ t.string "name"
77
+ t.string "canvas_course_id", null: false
78
+ t.string "sis_id"
82
79
  t.datetime "start_at"
83
80
  t.datetime "conclude_at"
84
- t.string "workflow_state"
85
- t.string "course_code"
81
+ t.string "workflow_state"
82
+ t.string "course_code"
86
83
  t.datetime "created_at"
87
84
  t.datetime "updated_at"
85
+ t.index ["coalescing_panda_lti_account_id", "canvas_course_id"], name: "index_courses_account", unique: true
86
+ t.index ["coalescing_panda_term_id", "canvas_course_id"], name: "index_courses_term", unique: true
87
+ t.index ["sis_id"], name: "index_coalescing_panda_courses_on_sis_id"
88
88
  end
89
89
 
90
- add_index "coalescing_panda_courses", ["coalescing_panda_lti_account_id", "canvas_course_id"], name: "index_courses_account", unique: true
91
- add_index "coalescing_panda_courses", ["coalescing_panda_term_id", "canvas_course_id"], name: "index_courses_term", unique: true
92
- add_index "coalescing_panda_courses", ["sis_id"], name: "index_coalescing_panda_courses_on_sis_id"
93
-
94
90
  create_table "coalescing_panda_enrollments", force: :cascade do |t|
95
- t.integer "coalescing_panda_user_id", null: false
96
- t.integer "coalescing_panda_section_id", null: false
97
- t.string "workflow_state"
98
- t.string "sis_id"
99
- t.string "canvas_enrollment_id", null: false
100
- t.string "enrollment_type"
91
+ t.integer "coalescing_panda_user_id", null: false
92
+ t.integer "coalescing_panda_section_id", null: false
93
+ t.string "workflow_state"
94
+ t.string "sis_id"
95
+ t.string "canvas_enrollment_id", null: false
96
+ t.string "enrollment_type"
101
97
  t.datetime "start_at"
102
98
  t.datetime "end_at"
103
99
  t.datetime "created_at"
104
100
  t.datetime "updated_at"
101
+ t.index ["coalescing_panda_user_id", "coalescing_panda_section_id", "enrollment_type"], name: "index_enrollments_user_and_section", unique: true
102
+ t.index ["sis_id"], name: "index_coalescing_panda_enrollments_on_sis_id"
105
103
  end
106
104
 
107
- add_index "coalescing_panda_enrollments", ["coalescing_panda_user_id", "coalescing_panda_section_id", "enrollment_type"], name: "index_enrollments_user_and_section", unique: true
108
- add_index "coalescing_panda_enrollments", ["sis_id"], name: "index_coalescing_panda_enrollments_on_sis_id"
109
-
110
105
  create_table "coalescing_panda_group_categories", force: :cascade do |t|
111
- t.integer "context_id"
112
- t.string "context_type"
113
- t.integer "canvas_group_category_id"
114
- t.string "name"
106
+ t.string "context_type"
107
+ t.integer "context_id"
108
+ t.integer "canvas_group_category_id"
109
+ t.string "name"
115
110
  t.datetime "created_at"
116
111
  t.datetime "updated_at"
112
+ t.index ["context_id", "context_type"], name: "index_group_categories_context_and_context_type"
117
113
  end
118
114
 
119
- add_index "coalescing_panda_group_categories", ["context_id", "context_type"], name: "index_group_categories_context_and_context_type"
120
-
121
115
  create_table "coalescing_panda_group_memberships", force: :cascade do |t|
122
- t.integer "coalescing_panda_group_id"
123
- t.integer "coalescing_panda_user_id"
124
- t.string "canvas_group_membership_id"
125
- t.string "workflow_state"
116
+ t.integer "coalescing_panda_group_id"
117
+ t.integer "coalescing_panda_user_id"
118
+ t.string "canvas_group_membership_id"
119
+ t.string "workflow_state"
126
120
  t.datetime "created_at"
127
121
  t.datetime "updated_at"
128
- t.boolean "moderator"
122
+ t.boolean "moderator"
123
+ t.index ["coalescing_panda_group_id", "coalescing_panda_user_id"], name: "index_group_memberships_user_and_group", unique: true
129
124
  end
130
125
 
131
- add_index "coalescing_panda_group_memberships", ["coalescing_panda_group_id", "coalescing_panda_user_id"], name: "index_group_memberships_user_and_group", unique: true
132
-
133
126
  create_table "coalescing_panda_groups", force: :cascade do |t|
134
- t.integer "context_id"
135
- t.string "context_type"
136
- t.string "description"
137
- t.string "group_category_id"
138
- t.string "canvas_group_id"
139
- t.string "name"
140
- t.integer "members_count"
127
+ t.string "context_type"
128
+ t.integer "context_id"
129
+ t.string "description"
130
+ t.string "group_category_id"
131
+ t.string "canvas_group_id"
132
+ t.string "name"
133
+ t.integer "members_count"
141
134
  t.datetime "created_at"
142
135
  t.datetime "updated_at"
143
- t.integer "leader_id"
144
- t.integer "coalescing_panda_group_category_id"
136
+ t.integer "leader_id"
137
+ t.integer "coalescing_panda_group_category_id"
138
+ t.index ["context_id", "canvas_group_id"], name: "index_groups_context_and_group_id", unique: true
145
139
  end
146
140
 
147
- add_index "coalescing_panda_groups", ["context_id", "canvas_group_id"], name: "index_groups_context_and_group_id", unique: true
148
-
149
141
  create_table "coalescing_panda_lti_accounts", force: :cascade do |t|
150
- t.string "name"
151
- t.string "key"
152
- t.string "secret"
153
- t.string "oauth2_client_id"
154
- t.string "oauth2_client_key"
155
- t.string "canvas_account_id"
156
- t.text "settings"
142
+ t.string "name"
143
+ t.string "key"
144
+ t.string "secret"
145
+ t.string "oauth2_client_id"
146
+ t.string "oauth2_client_key"
147
+ t.string "canvas_account_id"
148
+ t.text "settings"
157
149
  t.datetime "created_at"
158
150
  t.datetime "updated_at"
159
151
  end
160
152
 
161
153
  create_table "coalescing_panda_lti_nonces", force: :cascade do |t|
162
- t.integer "coalescing_panda_lti_account_id"
163
- t.string "nonce"
154
+ t.integer "coalescing_panda_lti_account_id"
155
+ t.string "nonce"
164
156
  t.datetime "timestamp"
165
157
  end
166
158
 
167
159
  create_table "coalescing_panda_oauth_states", force: :cascade do |t|
168
- t.string "state_key"
169
- t.text "data"
160
+ t.string "state_key"
161
+ t.text "data"
170
162
  t.datetime "created_at"
171
163
  t.datetime "updated_at"
164
+ t.index ["state_key"], name: "index_coalescing_panda_oauth_states_on_state_key", unique: true
172
165
  end
173
166
 
174
- add_index "coalescing_panda_oauth_states", ["state_key"], name: "index_coalescing_panda_oauth_states_on_state_key", unique: true
175
-
176
167
  create_table "coalescing_panda_persistent_sessions", force: :cascade do |t|
177
- t.string "session_key"
178
- t.text "data"
179
- t.integer "coalescing_panda_lti_account_id"
180
- t.datetime "created_at", null: false
181
- t.datetime "updated_at", null: false
168
+ t.string "session_key"
169
+ t.text "data"
170
+ t.integer "coalescing_panda_lti_account_id"
171
+ t.datetime "created_at", null: false
172
+ t.datetime "updated_at", null: false
173
+ t.index ["coalescing_panda_lti_account_id"], name: "index_persistent_session_on_lti_account_id"
174
+ t.index ["session_key"], name: "index_coalescing_panda_persistent_sessions_on_session_key", unique: true
182
175
  end
183
176
 
184
- add_index "coalescing_panda_persistent_sessions", ["coalescing_panda_lti_account_id"], name: "index_persistent_session_on_lti_account_id", using: :btree
185
- add_index "coalescing_panda_persistent_sessions", ["session_key"], name: "index_coalescing_panda_persistent_sessions_on_session_key", unique: true, using: :btree
186
-
187
177
  create_table "coalescing_panda_sections", force: :cascade do |t|
188
- t.integer "coalescing_panda_course_id", null: false
189
- t.string "name"
190
- t.string "canvas_section_id", null: false
191
- t.string "sis_id"
192
- t.string "workflow_state"
178
+ t.integer "coalescing_panda_course_id", null: false
179
+ t.string "name"
180
+ t.string "canvas_section_id", null: false
181
+ t.string "sis_id"
182
+ t.string "workflow_state"
193
183
  t.datetime "start_at"
194
184
  t.datetime "end_at"
195
185
  t.datetime "created_at"
196
186
  t.datetime "updated_at"
187
+ t.index ["coalescing_panda_course_id", "canvas_section_id"], name: "index_sections_course", unique: true
188
+ t.index ["sis_id"], name: "index_coalescing_panda_sections_on_sis_id"
197
189
  end
198
190
 
199
- add_index "coalescing_panda_sections", ["coalescing_panda_course_id", "canvas_section_id"], name: "index_sections_course", unique: true
200
- add_index "coalescing_panda_sections", ["sis_id"], name: "index_coalescing_panda_sections_on_sis_id"
201
-
202
191
  create_table "coalescing_panda_sessions", force: :cascade do |t|
203
- t.string "token"
204
- t.text "data"
192
+ t.string "token"
193
+ t.text "data"
205
194
  t.datetime "created_at"
206
195
  t.datetime "updated_at"
207
196
  end
208
197
 
209
198
  create_table "coalescing_panda_submissions", force: :cascade do |t|
210
- t.integer "coalescing_panda_user_id", null: false
211
- t.integer "coalescing_panda_assignment_id", null: false
212
- t.string "url"
213
- t.string "grade"
214
- t.string "score"
199
+ t.integer "coalescing_panda_user_id", null: false
200
+ t.integer "coalescing_panda_assignment_id", null: false
201
+ t.string "url"
202
+ t.string "grade"
203
+ t.string "score"
215
204
  t.datetime "submitted_at"
216
- t.string "workflow_state"
217
- t.string "canvas_submission_id", null: false
205
+ t.string "workflow_state"
206
+ t.string "canvas_submission_id", null: false
218
207
  t.datetime "created_at"
219
208
  t.datetime "updated_at"
209
+ t.index ["canvas_submission_id"], name: "index_coalescing_panda_submissions_on_canvas_submission_id"
210
+ t.index ["coalescing_panda_user_id", "coalescing_panda_assignment_id", "canvas_submission_id"], name: "index_submissions_user_and_assignment", unique: true
220
211
  end
221
212
 
222
- add_index "coalescing_panda_submissions", ["canvas_submission_id"], name: "index_coalescing_panda_submissions_on_canvas_submission_id"
223
- add_index "coalescing_panda_submissions", ["coalescing_panda_user_id", "coalescing_panda_assignment_id", "canvas_submission_id"], name: "index_submissions_user_and_assignment", unique: true
224
-
225
213
  create_table "coalescing_panda_terms", force: :cascade do |t|
226
- t.integer "coalescing_panda_lti_account_id", null: false
227
- t.string "name"
228
- t.string "code"
229
- t.string "sis_id"
230
- t.string "canvas_term_id", null: false
214
+ t.integer "coalescing_panda_lti_account_id", null: false
215
+ t.string "name"
216
+ t.string "code"
217
+ t.string "sis_id"
218
+ t.string "canvas_term_id", null: false
231
219
  t.datetime "start_at"
232
220
  t.datetime "end_at"
233
- t.string "workflow_state"
221
+ t.string "workflow_state"
234
222
  t.datetime "created_at"
235
223
  t.datetime "updated_at"
224
+ t.index ["canvas_term_id", "coalescing_panda_lti_account_id"], name: "index_terms_account", unique: true
225
+ t.index ["sis_id"], name: "index_coalescing_panda_terms_on_sis_id"
236
226
  end
237
227
 
238
- add_index "coalescing_panda_terms", ["canvas_term_id", "coalescing_panda_lti_account_id"], name: "index_terms_account", unique: true
239
- add_index "coalescing_panda_terms", ["sis_id"], name: "index_coalescing_panda_terms_on_sis_id"
240
-
241
228
  create_table "coalescing_panda_users", force: :cascade do |t|
242
- t.integer "coalescing_panda_lti_account_id", null: false
243
- t.string "name"
244
- t.string "email"
245
- t.string "roles"
246
- t.string "workflow_state"
247
- t.string "sis_id"
248
- t.string "canvas_user_id", null: false
229
+ t.integer "coalescing_panda_lti_account_id", null: false
230
+ t.string "name"
231
+ t.string "email"
232
+ t.string "roles"
233
+ t.string "workflow_state"
234
+ t.string "sis_id"
235
+ t.string "canvas_user_id", null: false
249
236
  t.datetime "created_at"
250
237
  t.datetime "updated_at"
251
- t.string "login_id"
238
+ t.string "login_id"
239
+ t.index ["coalescing_panda_lti_account_id", "canvas_user_id"], name: "index_users_account", unique: true
240
+ t.index ["sis_id"], name: "index_coalescing_panda_users_on_sis_id"
252
241
  end
253
242
 
254
- add_index "coalescing_panda_users", ["coalescing_panda_lti_account_id", "canvas_user_id"], name: "index_users_account", unique: true
255
- add_index "coalescing_panda_users", ["sis_id"], name: "index_coalescing_panda_users_on_sis_id"
256
-
257
243
  create_table "delayed_jobs", force: :cascade do |t|
258
- t.integer "priority", default: 0, null: false
259
- t.integer "attempts", default: 0, null: false
260
- t.text "handler", null: false
261
- t.text "last_error"
244
+ t.integer "priority", default: 0, null: false
245
+ t.integer "attempts", default: 0, null: false
246
+ t.text "handler", null: false
247
+ t.text "last_error"
262
248
  t.datetime "run_at"
263
249
  t.datetime "locked_at"
264
250
  t.datetime "failed_at"
265
- t.string "locked_by"
266
- t.string "queue"
251
+ t.string "locked_by"
252
+ t.string "queue"
267
253
  t.datetime "created_at"
268
254
  t.datetime "updated_at"
255
+ t.index ["priority", "run_at"], name: "delayed_jobs_priority"
269
256
  end
270
257
 
271
- add_index "delayed_jobs", ["priority", "run_at"], name: "delayed_jobs_priority"
272
-
273
258
  end
Binary file
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coalescing_panda
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.1.8
4
+ version: 5.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Mills
8
8
  - Cody Tanner
9
9
  - Jake Sorce
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-06-30 00:00:00.000000000 Z
13
+ date: 2021-07-21 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
@@ -410,7 +410,7 @@ dependencies:
410
410
  - - ">="
411
411
  - !ruby/object:Gem::Version
412
412
  version: '0'
413
- description:
413
+ description:
414
414
  email:
415
415
  - nathanm@instructure.com
416
416
  - ctanner@instructure.com
@@ -540,7 +540,9 @@ files:
540
540
  - spec/dummy/config/initializers/wrap_parameters.rb
541
541
  - spec/dummy/config/locales/en.yml
542
542
  - spec/dummy/config/routes.rb
543
+ - spec/dummy/db/development.sqlite3
543
544
  - spec/dummy/db/schema.rb
545
+ - spec/dummy/db/test.sqlite3
544
546
  - spec/dummy/public/404.html
545
547
  - spec/dummy/public/422.html
546
548
  - spec/dummy/public/500.html
@@ -577,7 +579,7 @@ files:
577
579
  homepage: http://www.instructure.com
578
580
  licenses: []
579
581
  metadata: {}
580
- post_install_message:
582
+ post_install_message:
581
583
  rdoc_options: []
582
584
  require_paths:
583
585
  - lib
@@ -592,76 +594,77 @@ required_rubygems_version: !ruby/object:Gem::Requirement
592
594
  - !ruby/object:Gem::Version
593
595
  version: '0'
594
596
  requirements: []
595
- rubyforge_project:
596
- rubygems_version: 2.6.14.4
597
- signing_key:
597
+ rubygems_version: 3.0.3
598
+ signing_key:
598
599
  specification_version: 4
599
600
  summary: Canvas LTI and OAUTH2 mountable engine
600
601
  test_files:
602
+ - spec/rails_helper.rb
603
+ - spec/models/coalescing_panda/canvas_api_auth_spec.rb
604
+ - spec/models/coalescing_panda/assignment_spec.rb
605
+ - spec/models/coalescing_panda/group_membership_spec.rb
606
+ - spec/models/coalescing_panda/lti_account_spec.rb
607
+ - spec/models/coalescing_panda/section_spec.rb
608
+ - spec/models/coalescing_panda/workers/course_miner_spec.rb
609
+ - spec/models/coalescing_panda/workers/account_miner_spec.rb
610
+ - spec/models/coalescing_panda/group_spec.rb
611
+ - spec/models/coalescing_panda/lti_nonce_spec.rb
612
+ - spec/models/coalescing_panda/submission_spec.rb
613
+ - spec/models/coalescing_panda/term_spec.rb
614
+ - spec/models/coalescing_panda/canvas_batch_spec.rb
615
+ - spec/models/coalescing_panda/enrollment_spec.rb
616
+ - spec/models/coalescing_panda/course_spec.rb
617
+ - spec/models/coalescing_panda/user_spec.rb
618
+ - spec/models/coalescing_panda/assignment_group_spec.rb
619
+ - spec/controllers/coalescing_panda/oauth2_controller_spec.rb
620
+ - spec/controllers/coalescing_panda/lti_controller_spec.rb
621
+ - spec/controllers/coalescing_panda/canvas_batches_controller_spec.rb
601
622
  - spec/spec_helper.rb
623
+ - spec/dummy/db/schema.rb
624
+ - spec/dummy/db/test.sqlite3
625
+ - spec/dummy/db/development.sqlite3
626
+ - spec/dummy/public/422.html
627
+ - spec/dummy/public/favicon.ico
628
+ - spec/dummy/public/404.html
629
+ - spec/dummy/public/500.html
630
+ - spec/dummy/Rakefile
631
+ - spec/dummy/app/views/layouts/application.html.erb
602
632
  - spec/dummy/app/models/account.rb
603
633
  - spec/dummy/app/models/course.rb
604
634
  - spec/dummy/app/controllers/application_controller.rb
605
- - spec/dummy/app/views/layouts/application.html.erb
606
- - spec/dummy/app/assets/javascripts/application.js
607
- - spec/dummy/app/assets/stylesheets/application.css
608
635
  - spec/dummy/app/helpers/application_helper.rb
609
- - spec/dummy/bin/rake
610
- - spec/dummy/bin/bundle
611
- - spec/dummy/bin/rails
612
- - spec/dummy/config/routes.rb
613
- - spec/dummy/config/locales/en.yml
614
- - spec/dummy/config/environments/production.rb
615
- - spec/dummy/config/environments/development.rb
616
- - spec/dummy/config/environments/test.rb
617
- - spec/dummy/config/environment.rb
636
+ - spec/dummy/app/assets/stylesheets/application.css
637
+ - spec/dummy/app/assets/javascripts/application.js
618
638
  - spec/dummy/config/application.rb
619
- - spec/dummy/config/database.yml
620
- - spec/dummy/config/boot.rb
621
639
  - spec/dummy/config/initializers/lti_initializer.rb
622
- - spec/dummy/config/initializers/backtrace_silencers.rb
623
- - spec/dummy/config/initializers/mime_types.rb
624
- - spec/dummy/config/initializers/filter_parameter_logging.rb
625
640
  - spec/dummy/config/initializers/session_store.rb
626
- - spec/dummy/config/initializers/wrap_parameters.rb
627
641
  - spec/dummy/config/initializers/secret_token.rb
642
+ - spec/dummy/config/initializers/wrap_parameters.rb
628
643
  - spec/dummy/config/initializers/inflections.rb
629
- - spec/dummy/config.ru
630
- - spec/dummy/Rakefile
631
- - spec/dummy/public/favicon.ico
632
- - spec/dummy/public/422.html
633
- - spec/dummy/public/500.html
634
- - spec/dummy/public/404.html
635
- - spec/dummy/db/schema.rb
644
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
645
+ - spec/dummy/config/initializers/mime_types.rb
646
+ - spec/dummy/config/initializers/backtrace_silencers.rb
647
+ - spec/dummy/config/environments/development.rb
648
+ - spec/dummy/config/environments/test.rb
649
+ - spec/dummy/config/environments/production.rb
650
+ - spec/dummy/config/database.yml
651
+ - spec/dummy/config/boot.rb
652
+ - spec/dummy/config/routes.rb
653
+ - spec/dummy/config/environment.rb
654
+ - spec/dummy/config/locales/en.yml
636
655
  - spec/dummy/README.rdoc
637
- - spec/models/coalescing_panda/enrollment_spec.rb
638
- - spec/models/coalescing_panda/section_spec.rb
639
- - spec/models/coalescing_panda/lti_nonce_spec.rb
640
- - spec/models/coalescing_panda/lti_account_spec.rb
641
- - spec/models/coalescing_panda/canvas_batch_spec.rb
642
- - spec/models/coalescing_panda/term_spec.rb
643
- - spec/models/coalescing_panda/assignment_spec.rb
644
- - spec/models/coalescing_panda/submission_spec.rb
645
- - spec/models/coalescing_panda/assignment_group_spec.rb
646
- - spec/models/coalescing_panda/group_spec.rb
647
- - spec/models/coalescing_panda/workers/account_miner_spec.rb
648
- - spec/models/coalescing_panda/workers/course_miner_spec.rb
649
- - spec/models/coalescing_panda/canvas_api_auth_spec.rb
650
- - spec/models/coalescing_panda/group_membership_spec.rb
651
- - spec/models/coalescing_panda/user_spec.rb
652
- - spec/models/coalescing_panda/course_spec.rb
653
- - spec/factories/courses.rb
654
- - spec/factories/submissions.rb
655
- - spec/factories/assignment_groups.rb
656
- - spec/factories/assignments.rb
657
- - spec/factories/canvas_api_auths.rb
656
+ - spec/dummy/config.ru
657
+ - spec/dummy/bin/bundle
658
+ - spec/dummy/bin/rake
659
+ - spec/dummy/bin/rails
660
+ - spec/factories/accounts.rb
658
661
  - spec/factories/enrollments.rb
659
- - spec/factories/canvas_batches.rb
662
+ - spec/factories/terms.rb
660
663
  - spec/factories/sections.rb
661
- - spec/factories/accounts.rb
664
+ - spec/factories/canvas_batches.rb
665
+ - spec/factories/assignment_groups.rb
666
+ - spec/factories/submissions.rb
667
+ - spec/factories/courses.rb
668
+ - spec/factories/assignments.rb
662
669
  - spec/factories/users.rb
663
- - spec/factories/terms.rb
664
- - spec/controllers/coalescing_panda/canvas_batches_controller_spec.rb
665
- - spec/controllers/coalescing_panda/oauth2_controller_spec.rb
666
- - spec/controllers/coalescing_panda/lti_controller_spec.rb
667
- - spec/rails_helper.rb
670
+ - spec/factories/canvas_api_auths.rb