bearcat 0.8 → 0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,7 @@ require 'bearcat/client/o_auth2'
10
10
  require 'bearcat/client/groups'
11
11
  require 'bearcat/client/conferences'
12
12
  require 'bearcat/client/users'
13
+ require 'bearcat/client/reports'
13
14
 
14
15
  module Bearcat
15
16
  class Client < Footrest::Client
@@ -24,6 +25,7 @@ module Bearcat
24
25
  include Groups
25
26
  include Conferences
26
27
  include Users
28
+ include Reports
27
29
 
28
30
 
29
31
  # Override Footrest request for ApiArray support
@@ -10,7 +10,7 @@ module Bearcat
10
10
  post("/api/v1/accounts/#{account_id}/courses", params)
11
11
  end
12
12
 
13
- def list_users(course, params={})
13
+ def list_course_users(course, params={})
14
14
  get("/api/v1/courses/#{course}/users", params)
15
15
  end
16
16
 
@@ -0,0 +1,27 @@
1
+ module Bearcat
2
+ class Client < Footrest::Client
3
+ module Reports
4
+
5
+ def report_list(account)
6
+ get("/api/v1/accounts/#{account}/reports")
7
+ end
8
+
9
+ def start_report(account, report_name, params = {})
10
+ post("/api/v1/accounts/#{account}/reports/#{report_name}", params)
11
+ end
12
+
13
+ def report_history(account, report_name)
14
+ get("/api/v1/accounts/#{account}/reports/#{report_name}")
15
+ end
16
+
17
+ def report_status(account, report_name, report_id)
18
+ get("/api/v1/accounts/#{account}/reports/#{report_name}/#{report_id}")
19
+ end
20
+
21
+ def delete_report(account, report_name, report_id)
22
+ delete("/api/v1/accounts/#{account}/reports/#{report_name}/#{report_id}")
23
+ end
24
+
25
+ end
26
+ end
27
+ end
@@ -1,3 +1,3 @@
1
1
  module Bearcat
2
- VERSION = '0.8' unless defined?(Bearcat::VERSION)
2
+ VERSION = '0.9' unless defined?(Bearcat::VERSION)
3
3
  end
@@ -23,7 +23,7 @@ describe Bearcat::Client::Sections do
23
23
 
24
24
  it "lists all of the students in a course" do
25
25
  stub_get(@client, "/api/v1/courses/1/users?enrollment_type=student").to_return(json_response("course_students.json"))
26
- students = @client.list_users(1, {"enrollment_type" => "student"})
26
+ students = @client.list_course_users(1, {"enrollment_type" => "student"})
27
27
  students['name'].should == 'test@student.com'
28
28
  students['id'].should == 2
29
29
  end
@@ -0,0 +1,38 @@
1
+ require 'helper'
2
+
3
+ describe Bearcat::Client::Reports do
4
+ before do
5
+ @client = Bearcat::Client.new(prefix: 'http://canvas.instructure.com', token: 'test_token')
6
+ end
7
+
8
+ it 'lists the reports availible' do
9
+ stub_get(@client, '/api/v1/accounts/1/reports').to_return(json_response('report_list.json'))
10
+ reports = @client.report_list(1)
11
+ reports.count.should == 38
12
+ end
13
+
14
+ it 'starts a report' do
15
+ stub_post(@client, '/api/v1/accounts/1/reports/last_user_access_csv').to_return(json_response('start_report.json'))
16
+ status = @client.start_report(1, 'last_user_access_csv')
17
+ status['report'].should == 'last_user_access_csv'
18
+ end
19
+
20
+ it 'lists the report history' do
21
+ stub_get(@client, '/api/v1/accounts/1/reports/last_user_access_csv').to_return(json_response('report_history.json'))
22
+ history = @client.report_history(1, 'last_user_access_csv')
23
+ history.count == 2
24
+ end
25
+
26
+ it 'gets the status of a report' do
27
+ stub_get(@client, '/api/v1/accounts/1/reports/last_user_access_csv/72').to_return(json_response('report_status.json'))
28
+ status = @client.report_status(1, 'last_user_access_csv', 72)
29
+ status['status'] == 'complete'
30
+ end
31
+
32
+ it 'deletes a report' do
33
+ stub_delete(@client, '/api/v1/accounts/1/reports/last_user_access_csv/72').to_return(json_response('report_status.json'))
34
+ status = @client.delete_report(1, 'last_user_access_csv', 72)
35
+ status['report'] == 'last_user_access_csv'
36
+ end
37
+
38
+ end
@@ -0,0 +1,52 @@
1
+ [
2
+ {
3
+ "id": 71,
4
+ "parameters": {},
5
+ "progress": 100,
6
+ "status": "complete",
7
+ "report": "last_user_access_csv",
8
+ "file_url": "https://localhost:3000/accounts/1/files/678/download",
9
+ "attachment": {
10
+ "id": 678,
11
+ "content-type": "text/csv",
12
+ "display_name": "last_user_access_csv_23_Jan_2014_71_14345-0.csv",
13
+ "filename": "1390497025_763__last_user_access_csv_23_Jan_2014_71_14345-0.csv",
14
+ "url": "http://localhost:3000/files/678/download?download_frd=1&verifier=zFvx1rVQ8yg78DAwvATtFXfasZg8ECrNiJsCeqGH",
15
+ "size": 13350,
16
+ "created_at": "2014-01-23T17:10:24Z",
17
+ "updated_at": "2014-01-23T17:10:25Z",
18
+ "unlock_at": null,
19
+ "locked": false,
20
+ "hidden": false,
21
+ "lock_at": null,
22
+ "hidden_for_user": false,
23
+ "thumbnail_url": null,
24
+ "locked_for_user": false
25
+ }
26
+ },
27
+ {
28
+ "id": 72,
29
+ "parameters": {},
30
+ "progress": 100,
31
+ "status": "complete",
32
+ "report": "last_user_access_csv",
33
+ "file_url": "https://localhost:3000/accounts/1/files/679/download",
34
+ "attachment": {
35
+ "id": 679,
36
+ "content-type": "text/csv",
37
+ "display_name": "last_user_access_csv_23_Jan_2014_72_14345-0.csv",
38
+ "filename": "1390497025_763__last_user_access_csv_23_Jan_2014_71_14345-0.csv",
39
+ "url": "http://localhost:3000/files/679/download?download_frd=1&verifier=BfzTimBCj3Tg430dTx8CW6e6qJQsQIzZJfgcdjd1",
40
+ "size": 13350,
41
+ "created_at": "2014-01-23T17:10:53Z",
42
+ "updated_at": "2014-01-23T17:10:53Z",
43
+ "unlock_at": null,
44
+ "locked": false,
45
+ "hidden": false,
46
+ "lock_at": null,
47
+ "hidden_for_user": false,
48
+ "thumbnail_url": null,
49
+ "locked_for_user": false
50
+ }
51
+ }
52
+ ]
@@ -0,0 +1,862 @@
1
+ [
2
+ {
3
+ "title": "Grade Export",
4
+ "parameters": {
5
+ "enrollment_term_id": {
6
+ "required": false,
7
+ "description": "The canvas id of the term to get grades from"
8
+ },
9
+ "include_deleted": {
10
+ "required": false,
11
+ "description": "Include deleted objects"
12
+ }
13
+ },
14
+ "report": "grade_export_csv",
15
+ "last_run": {
16
+ "id": 60,
17
+ "parameters": {
18
+ "enrollment_term_id": "",
19
+ "extra_text": "Term: All Terms;"
20
+ },
21
+ "progress": 100,
22
+ "status": "complete",
23
+ "report": "grade_export_csv",
24
+ "file_url": "https://localhost:3000/accounts/1/files/505/download",
25
+ "attachment": {
26
+ "id": 505,
27
+ "content-type": "text/csv",
28
+ "display_name": "grade_export_csv_05_Nov_2013_60_55437-0.csv",
29
+ "filename": "grade_export_csv_05_Nov_2013_60_55437-0.csv",
30
+ "url": "http://localhost:3000/files/505/download?download_frd=1&verifier=tJ8uRDjK4IlrtAed8QcziGn8b3MHnx7jyw2q5oiV",
31
+ "size": 5625,
32
+ "created_at": "2013-11-05T16:24:40Z",
33
+ "updated_at": "2013-11-05T16:24:40Z",
34
+ "unlock_at": null,
35
+ "locked": false,
36
+ "hidden": false,
37
+ "lock_at": null,
38
+ "hidden_for_user": false,
39
+ "thumbnail_url": null,
40
+ "locked_for_user": false
41
+ }
42
+ }
43
+ },
44
+ {
45
+ "title": "Last User Access",
46
+ "parameters": {
47
+ "enrollment_term_id": {
48
+ "required": false,
49
+ "description": "The canvas id of the term to get grades from"
50
+ },
51
+ "course_id": {
52
+ "required": false,
53
+ "description": "The course to report on"
54
+ }
55
+ },
56
+ "report": "last_user_access_csv",
57
+ "last_run": null
58
+ },
59
+ {
60
+ "title": "Outcome Results",
61
+ "parameters": {
62
+ "enrollment_term_id": {
63
+ "required": false,
64
+ "description": "The canvas id of the term of courses to report on"
65
+ },
66
+ "order": {
67
+ "required": false,
68
+ "description": "The sort order for the csv, Options: 'users', 'courses', 'outcomes'"
69
+ },
70
+ "include_deleted": {
71
+ "required": false,
72
+ "description": "Include deleted objects"
73
+ }
74
+ },
75
+ "report": "outcome_results_csv",
76
+ "last_run": null
77
+ },
78
+ {
79
+ "title": "Provisioning",
80
+ "parameters": {
81
+ "enrollment_term_id": {
82
+ "required": false,
83
+ "description": "The canvas id of the term of courses to report on"
84
+ },
85
+ "users": {
86
+ "required": false,
87
+ "description": "Get the Provisioning file for users"
88
+ },
89
+ "accounts": {
90
+ "required": false,
91
+ "description": "Get the Provisioning file for accounts"
92
+ },
93
+ "terms": {
94
+ "required": false,
95
+ "description": "Get the Provisioning file for terms"
96
+ },
97
+ "courses": {
98
+ "required": false,
99
+ "description": "Get the Provisioning file for courses"
100
+ },
101
+ "sections": {
102
+ "required": false,
103
+ "description": "Get the Provisioning file for sections"
104
+ },
105
+ "enrollments": {
106
+ "required": false,
107
+ "description": "Get the Provisioning file for enrollments"
108
+ },
109
+ "groups": {
110
+ "required": false,
111
+ "description": "Get the Provisioning file for groups"
112
+ },
113
+ "group_membership": {
114
+ "required": false,
115
+ "description": "Get the Provisioning file for group_membership"
116
+ },
117
+ "xlist": {
118
+ "required": false,
119
+ "description": "Get the Provisioning file for cross listed courses"
120
+ },
121
+ "include_deleted": {
122
+ "required": false,
123
+ "description": "Include deleted objects"
124
+ }
125
+ },
126
+ "report": "provisioning_csv",
127
+ "last_run": {
128
+ "id": 70,
129
+ "parameters": {
130
+ "enrollment_term_id": "",
131
+ "users": "1",
132
+ "courses": "1",
133
+ "sections": "1",
134
+ "enrollments": "1",
135
+ "groups": "1",
136
+ "group_membership": "1",
137
+ "extra_text": "Term: All Terms; Reports: users courses sections enrollments groups group_membership "
138
+ },
139
+ "progress": 100,
140
+ "status": "complete",
141
+ "report": "provisioning_csv",
142
+ "file_url": "https://localhost:3000/accounts/1/files/677/download",
143
+ "attachment": {
144
+ "id": 677,
145
+ "content-type": "application/zip",
146
+ "display_name": "provisioning_csv_23_Jan_2014_70_.zip",
147
+ "filename": "1390494378_345__provisioning_csv_23_Jan_2014_70_14345-0.zip",
148
+ "url": "http://localhost:3000/files/677/download?download_frd=1&verifier=a24g0vKYxb3hJCFYxWFqCvb67UcZ0NpTLqf7dydT",
149
+ "size": 8936,
150
+ "created_at": "2014-01-23T16:26:18Z",
151
+ "updated_at": "2014-01-23T16:26:18Z",
152
+ "unlock_at": null,
153
+ "locked": false,
154
+ "hidden": false,
155
+ "lock_at": null,
156
+ "hidden_for_user": false,
157
+ "thumbnail_url": null,
158
+ "locked_for_user": false
159
+ }
160
+ }
161
+ },
162
+ {
163
+ "title": "Recently Deleted Courses",
164
+ "parameters": {
165
+ "enrollment_term_id": {
166
+ "required": false,
167
+ "description": "The canvas id of the term to get grades from"
168
+ }
169
+ },
170
+ "report": "recently_deleted_courses_csv",
171
+ "last_run": null
172
+ },
173
+ {
174
+ "title": "SIS Export",
175
+ "parameters": {
176
+ "enrollment_term_id": {
177
+ "required": false,
178
+ "description": "The canvas id of the term of courses to report on"
179
+ },
180
+ "users": {
181
+ "required": false,
182
+ "description": "Get the SIS file for users"
183
+ },
184
+ "accounts": {
185
+ "required": false,
186
+ "description": "Get the SIS file for accounts"
187
+ },
188
+ "terms": {
189
+ "required": false,
190
+ "description": "Get the SIS file for terms"
191
+ },
192
+ "courses": {
193
+ "required": false,
194
+ "description": "Get the SIS file for courses"
195
+ },
196
+ "sections": {
197
+ "required": false,
198
+ "description": "Get the SIS file for sections"
199
+ },
200
+ "enrollments": {
201
+ "required": false,
202
+ "description": "Get the SIS file for enrollments"
203
+ },
204
+ "groups": {
205
+ "required": false,
206
+ "description": "Get the SIS file for groups"
207
+ },
208
+ "group_membership": {
209
+ "required": false,
210
+ "description": "Get the SIS file for group_membership"
211
+ },
212
+ "xlist": {
213
+ "required": false,
214
+ "description": "Get the SIS file for cross listed courses"
215
+ },
216
+ "include_deleted": {
217
+ "required": false,
218
+ "description": "Include deleted objects"
219
+ }
220
+ },
221
+ "report": "sis_export_csv",
222
+ "last_run": null
223
+ },
224
+ {
225
+ "title": "Student Competency",
226
+ "parameters": {
227
+ "enrollment_term_id": {
228
+ "required": false,
229
+ "description": "The canvas id of the term of courses to report on"
230
+ },
231
+ "include_deleted": {
232
+ "required": false,
233
+ "description": "Include deleted objects"
234
+ }
235
+ },
236
+ "report": "student_assignment_outcome_map_csv",
237
+ "last_run": null
238
+ },
239
+ {
240
+ "title": "Students with no submissions",
241
+ "parameters": {
242
+ "enrollment_term_id": {
243
+ "required": false,
244
+ "description": "The term to report on"
245
+ },
246
+ "course_id": {
247
+ "required": false,
248
+ "description": "The course to report on"
249
+ },
250
+ "start_at": {
251
+ "required": true,
252
+ "description": "The beginning date for submissions. Max time range is 2 weeks."
253
+ },
254
+ "end_at": {
255
+ "required": true,
256
+ "description": "The end date for submissions. Max time range is 2 weeks."
257
+ }
258
+ },
259
+ "report": "students_with_no_submissions_csv",
260
+ "last_run": null
261
+ },
262
+ {
263
+ "title": "Unpublished Courses",
264
+ "parameters": {
265
+ "enrollment_term_id": {
266
+ "required": false,
267
+ "description": "The canvas id of the term to get grades from"
268
+ }
269
+ },
270
+ "report": "unpublished_courses_csv",
271
+ "last_run": null
272
+ },
273
+ {
274
+ "title": "Unused Courses",
275
+ "parameters": {
276
+ "enrollment_term_id": {
277
+ "required": false,
278
+ "description": "The canvas id of the term to get courses from"
279
+ }
280
+ },
281
+ "report": "unused_courses_csv",
282
+ "last_run": null
283
+ },
284
+ {
285
+ "title": "Zero Activity",
286
+ "parameters": {
287
+ "enrollment_term_id": {
288
+ "required": false,
289
+ "description": "The canvas id of the term to get grades from"
290
+ },
291
+ "course_id": {
292
+ "required": false,
293
+ "description": "The course to report on"
294
+ }
295
+ },
296
+ "report": "zero_activity_csv",
297
+ "last_run": null
298
+ },
299
+ {
300
+ "title": "Multi-Student Progress",
301
+ "parameters": null,
302
+ "report": "multi_student_progress_csv",
303
+ "last_run": null
304
+ },
305
+ {
306
+ "title": "Ungraded Student Submissions",
307
+ "parameters": null,
308
+ "report": "ungraded_submissions_csv",
309
+ "last_run": null
310
+ },
311
+ {
312
+ "title": "Faculty Success Report",
313
+ "parameters": null,
314
+ "report": "faculty_success_csv",
315
+ "last_run": null
316
+ },
317
+ {
318
+ "title": "Registrar Report",
319
+ "parameters": null,
320
+ "report": "registrar_csv",
321
+ "last_run": null
322
+ },
323
+ {
324
+ "title": "Enrollment Summary",
325
+ "parameters": null,
326
+ "report": "enrollment_summary_csv",
327
+ "last_run": null
328
+ },
329
+ {
330
+ "title": "Google Doc Accounts",
331
+ "parameters": null,
332
+ "report": "google_doc_accounts_csv",
333
+ "last_run": null
334
+ },
335
+ {
336
+ "title": "Quiz Data",
337
+ "parameters": {
338
+ "enrollment_term_id": {
339
+ "required": false,
340
+ "description": "The term to report on"
341
+ },
342
+ "start_at": {
343
+ "required": true,
344
+ "description": "The beginning date for the quiz due date"
345
+ },
346
+ "end_at": {
347
+ "required": true,
348
+ "description": "The end date for the quiz due date"
349
+ }
350
+ },
351
+ "report": "quiz_data_csv",
352
+ "last_run": null
353
+ },
354
+ {
355
+ "title": "Quiz Statistics",
356
+ "parameters": {
357
+ "enrollment_term_id": {
358
+ "required": false,
359
+ "description": "The term to report on"
360
+ },
361
+ "start_at": {
362
+ "required": true,
363
+ "description": "The beginning date for the quiz due date"
364
+ },
365
+ "end_at": {
366
+ "required": true,
367
+ "description": "The end date for the quiz due date"
368
+ }
369
+ },
370
+ "report": "quiz_statistics_csv",
371
+ "last_run": null
372
+ },
373
+ {
374
+ "title": "Student Submissions",
375
+ "parameters": {
376
+ "enrollment_term_id": {
377
+ "required": false,
378
+ "description": "The term to report on"
379
+ },
380
+ "start_at": {
381
+ "required": true,
382
+ "description": "The beginning date for submissions"
383
+ },
384
+ "end_at": {
385
+ "required": true,
386
+ "description": "The end date for submissions"
387
+ }
388
+ },
389
+ "report": "student_submissions_csv",
390
+ "last_run": null
391
+ },
392
+ {
393
+ "title": "CampusVue Grade Export",
394
+ "parameters": {
395
+ "enrollment_term_id": {
396
+ "required": true,
397
+ "description": "The term for grade export data"
398
+ }
399
+ },
400
+ "report": "custom_grade_export_csv",
401
+ "last_run": null
402
+ },
403
+ {
404
+ "title": "SIS data",
405
+ "parameters": {
406
+ "users": {
407
+ "required": false,
408
+ "description": "Get the SIS file for users"
409
+ },
410
+ "sections": {
411
+ "required": false,
412
+ "description": "Get the SIS file for sections"
413
+ },
414
+ "enrollments": {
415
+ "required": false,
416
+ "description": "Get the SIS file for enrollments"
417
+ }
418
+ },
419
+ "report": "mississippi_sis_csv",
420
+ "last_run": null
421
+ },
422
+ {
423
+ "title": "Submission Data",
424
+ "parameters": {
425
+ "enrollment_term_id": {
426
+ "required": false,
427
+ "description": "The term to report on"
428
+ },
429
+ "course_id": {
430
+ "required": false,
431
+ "description": "The course to report on"
432
+ },
433
+ "start_at": {
434
+ "required": false,
435
+ "description": "Everything updated after start date"
436
+ }
437
+ },
438
+ "report": "submission_data_csv",
439
+ "last_run": null
440
+ },
441
+ {
442
+ "title": "Course Section Status",
443
+ "parameters": {
444
+ "enrollment_term_id": {
445
+ "required": true,
446
+ "description": "The term to get courses from"
447
+ }
448
+ },
449
+ "report": "course_status_csv",
450
+ "last_run": null
451
+ },
452
+ {
453
+ "title": "Student Grades",
454
+ "parameters": {
455
+ "pseudonym_ids": {
456
+ "required": true,
457
+ "description": "List of Pseudonyms to get report for"
458
+ },
459
+ "enrollment_term_id": {
460
+ "required": false,
461
+ "description": "The term to report on"
462
+ }
463
+ },
464
+ "report": "student_grades_csv",
465
+ "last_run": null
466
+ },
467
+ {
468
+ "title": "Student IP addresses",
469
+ "parameters": {
470
+ "enrollment_term_id": {
471
+ "required": false,
472
+ "description": "The term to report on"
473
+ },
474
+ "course_id": {
475
+ "required": false,
476
+ "description": "The course to report on"
477
+ }
478
+ },
479
+ "report": "student_ip_csv",
480
+ "last_run": null
481
+ },
482
+ {
483
+ "title": "Custom Outcomes",
484
+ "parameters": {
485
+ "enrollment_term_id": {
486
+ "required": false,
487
+ "description": "The canvas id of the term of courses to report on"
488
+ },
489
+ "course_id": {
490
+ "required": false,
491
+ "description": "The course to report on"
492
+ },
493
+ "outcome_id": {
494
+ "required": false,
495
+ "description": "The outcome to report on"
496
+ }
497
+ },
498
+ "report": "custom_outcomes_csv",
499
+ "last_run": null
500
+ },
501
+ {
502
+ "title": "Scantron Quiz",
503
+ "parameters": {
504
+ "quiz_id": {
505
+ "required": false,
506
+ "description": "Quiz to generate Scantron report for"
507
+ },
508
+ "section_id": {
509
+ "required": false,
510
+ "description": "Section ID"
511
+ }
512
+ },
513
+ "report": "scantron_quiz_csv",
514
+ "last_run": {
515
+ "id": 62,
516
+ "parameters": {
517
+ "quiz_id": "4",
518
+ "section_id": "",
519
+ "extra_text": "Quiz id: 4"
520
+ },
521
+ "progress": 100,
522
+ "status": "complete",
523
+ "report": "scantron_quiz_csv",
524
+ "file_url": "https://localhost:3000/accounts/1/files/674/download",
525
+ "attachment": {
526
+ "id": 674,
527
+ "content-type": "text/csv",
528
+ "display_name": "scantron_quiz_csv_15_Jan_2014_62_69183-0.csv",
529
+ "filename": "1389815265_348__scantron_quiz_csv_15_Jan_2014_62_69183-0.csv",
530
+ "url": "http://localhost:3000/files/674/download?download_frd=1&verifier=JAsyqPf8Ep2OWXpOUBIIz4Pv65W0ja33BDEdoFxw",
531
+ "size": 32,
532
+ "created_at": "2014-01-15T19:47:43Z",
533
+ "updated_at": "2014-01-15T19:47:45Z",
534
+ "unlock_at": null,
535
+ "locked": false,
536
+ "hidden": false,
537
+ "lock_at": null,
538
+ "hidden_for_user": false,
539
+ "thumbnail_url": null,
540
+ "locked_for_user": false
541
+ }
542
+ }
543
+ },
544
+ {
545
+ "title": "Students who have not logged in Report",
546
+ "parameters": {
547
+ "enrollment_term_id": {
548
+ "required": false,
549
+ "description": "The term to report on"
550
+ },
551
+ "start_at": {
552
+ "required": false,
553
+ "description": "Users that have not logged in since this date"
554
+ },
555
+ "never_logged_in": {
556
+ "required": false,
557
+ "description": "Include users that have never logged in"
558
+ }
559
+ },
560
+ "report": "student_login_csv",
561
+ "last_run": null
562
+ },
563
+ {
564
+ "title": "CHCP Student Activity Report",
565
+ "parameters": {
566
+ "enrollment_term_id": {
567
+ "required": false,
568
+ "description": "The term to report on"
569
+ },
570
+ "course_id": {
571
+ "required": false,
572
+ "description": "The course to report on"
573
+ }
574
+ },
575
+ "report": "chcp_student_activity_csv",
576
+ "last_run": {
577
+ "id": 21,
578
+ "parameters": {
579
+ "enrollment_term": ""
580
+ },
581
+ "progress": 100,
582
+ "status": "complete",
583
+ "report": "chcp_student_activity_csv",
584
+ "file_url": "https://localhost:3000/accounts/1/files/7/download",
585
+ "attachment": {
586
+ "id": 7,
587
+ "content-type": "text/csv",
588
+ "display_name": "chcp_student_activity_csv_02_Aug_2013_21_68034-0.csv",
589
+ "filename": "chcp_student_activity_csv_02_Aug_2013_21_68034-0.csv",
590
+ "url": "http://localhost:3000/files/7/download?download_frd=1&verifier=FJEOADJVYSfvRZlLBrMC3i7TqVBLP2y9SXudZIr0",
591
+ "size": 466,
592
+ "created_at": "2013-08-02T18:43:13Z",
593
+ "updated_at": "2013-08-02T18:43:13Z",
594
+ "unlock_at": null,
595
+ "locked": false,
596
+ "hidden": false,
597
+ "lock_at": null,
598
+ "hidden_for_user": false,
599
+ "thumbnail_url": null,
600
+ "locked_for_user": false
601
+ }
602
+ }
603
+ },
604
+ {
605
+ "title": "Students Access Report",
606
+ "parameters": {
607
+ "enrollment_term_id": {
608
+ "required": false,
609
+ "description": "The term to report on"
610
+ },
611
+ "course_id": {
612
+ "required": false,
613
+ "description": "The course to report on"
614
+ },
615
+ "start_at": {
616
+ "required": false,
617
+ "description": "Everything updated after start date"
618
+ }
619
+ },
620
+ "report": "student_access_csv",
621
+ "last_run": null
622
+ },
623
+ {
624
+ "title": "User Inactivity Report",
625
+ "parameters": {
626
+ "enrollment_term_id": {
627
+ "required": false,
628
+ "description": "The term to report on"
629
+ },
630
+ "course_id": {
631
+ "required": false,
632
+ "description": "The course to report on"
633
+ },
634
+ "start_at": {
635
+ "required": false,
636
+ "description": "Everything updated after start date"
637
+ },
638
+ "enrollment_type": {
639
+ "required": false,
640
+ "description": "Filter by 'student', 'teacher', or 'ta' enrollment types"
641
+ },
642
+ "minimum": {
643
+ "required": false,
644
+ "description": "Minimum number of course items visited, i.e. Assignment, syllabus, discussion"
645
+ }
646
+ },
647
+ "report": "user_inactivity_csv",
648
+ "last_run": null
649
+ },
650
+ {
651
+ "title": "CCP Zero Activity",
652
+ "parameters": {
653
+ "enrollment_term_id": {
654
+ "required": false,
655
+ "description": "The canvas id of the term to get grades from"
656
+ },
657
+ "course_id": {
658
+ "required": false,
659
+ "description": "The course to report on"
660
+ },
661
+ "start_at": {
662
+ "required": false,
663
+ "description": "Report start date"
664
+ },
665
+ "filter_online": {
666
+ "required": false,
667
+ "description": "Show online classes only"
668
+ }
669
+ },
670
+ "report": "ccp_zero_activity_csv",
671
+ "last_run": {
672
+ "id": 59,
673
+ "parameters": {
674
+ "enrollment_term_id": "",
675
+ "start_at": "",
676
+ "filter_online": "1",
677
+ "extra_text": "Online courses only"
678
+ },
679
+ "progress": 100,
680
+ "status": "complete",
681
+ "report": "ccp_zero_activity_csv",
682
+ "file_url": "https://localhost:3000/accounts/1/files/264/download",
683
+ "attachment": {
684
+ "id": 264,
685
+ "content-type": "text/csv",
686
+ "display_name": "ccp_zero_activity_csv_10_Sep_2013_59_2927-0.csv",
687
+ "filename": "ccp_zero_activity_csv_04_Sep_2013_52_79120-0.csv",
688
+ "url": "http://localhost:3000/files/264/download?download_frd=1&verifier=4CWe4OP4TBidM0Mi78BmaTv8pRvCYGM2Xc27tbxL",
689
+ "size": 720,
690
+ "created_at": "2013-09-10T22:59:48Z",
691
+ "updated_at": "2013-09-10T22:59:48Z",
692
+ "unlock_at": null,
693
+ "locked": false,
694
+ "hidden": false,
695
+ "lock_at": null,
696
+ "hidden_for_user": false,
697
+ "thumbnail_url": null,
698
+ "locked_for_user": false
699
+ }
700
+ }
701
+ },
702
+ {
703
+ "title": "Safety Drill Scheduling",
704
+ "parameters": {
705
+ "enrollment_term": {
706
+ "required": false,
707
+ "description": "The term to report on"
708
+ },
709
+ "tests": {
710
+ "required": false,
711
+ "description": "The Assignment Group named tests"
712
+ },
713
+ "projects": {
714
+ "required": false,
715
+ "description": "The Assignment Group named projects"
716
+ },
717
+ "papers": {
718
+ "required": false,
719
+ "description": "The Assignment Group named papers"
720
+ },
721
+ "reports": {
722
+ "required": false,
723
+ "description": "The Assignment Group named reports"
724
+ },
725
+ "major": {
726
+ "required": false,
727
+ "description": "The Assignment Group named major"
728
+ },
729
+ "start_at": {
730
+ "required": false,
731
+ "description": "Report start date"
732
+ },
733
+ "end_at": {
734
+ "required": true,
735
+ "description": "Report end date"
736
+ }
737
+ },
738
+ "report": "safety_drill_csv",
739
+ "last_run": {
740
+ "id": 22,
741
+ "parameters": {
742
+ "enrollment_term": "",
743
+ "start_at": "",
744
+ "end_at": "",
745
+ "tests": "tests",
746
+ "projects": "projects",
747
+ "papers": "papers",
748
+ "reports": "reports",
749
+ "extra_text": "Term: All Terms; Start At: 2013-08-09 15:42:07 -0600; End At: 2013-08-23 15:42:07 -0600; Assignment Group Types: "
750
+ },
751
+ "progress": 100,
752
+ "status": "complete",
753
+ "report": "safety_drill_csv",
754
+ "file_url": "https://localhost:3000/accounts/1/files/8/download",
755
+ "attachment": {
756
+ "id": 8,
757
+ "content-type": "text/csv",
758
+ "display_name": "safety_drill_csv_09_Aug_2013_22_47662-0.csv",
759
+ "filename": "safety_drill_csv_09_Aug_2013_22_47662-0.csv",
760
+ "url": "http://localhost:3000/files/8/download?download_frd=1&verifier=hlSArogafdLVZe8lOozvBSXVxdoJ2Uha4KxunYic",
761
+ "size": 171,
762
+ "created_at": "2013-08-09T21:42:07Z",
763
+ "updated_at": "2013-08-09T21:42:07Z",
764
+ "unlock_at": null,
765
+ "locked": false,
766
+ "hidden": false,
767
+ "lock_at": null,
768
+ "hidden_for_user": false,
769
+ "thumbnail_url": null,
770
+ "locked_for_user": false
771
+ }
772
+ }
773
+ },
774
+ {
775
+ "title": "Assignment Scheduling",
776
+ "parameters": {
777
+ "section_id": {
778
+ "required": false,
779
+ "description": "The section to report on"
780
+ },
781
+ "tests": {
782
+ "required": false,
783
+ "description": "The Assignment Group named tests"
784
+ },
785
+ "projects": {
786
+ "required": false,
787
+ "description": "The Assignment Group named projects"
788
+ },
789
+ "papers": {
790
+ "required": false,
791
+ "description": "The Assignment Group named papers"
792
+ },
793
+ "reports": {
794
+ "required": false,
795
+ "description": "The Assignment Group named reports"
796
+ },
797
+ "major": {
798
+ "required": false,
799
+ "description": "The Assignment Group named major"
800
+ },
801
+ "start_at": {
802
+ "required": false,
803
+ "description": "Report start date"
804
+ },
805
+ "end_at": {
806
+ "required": true,
807
+ "description": "Report end date"
808
+ }
809
+ },
810
+ "report": "assignment_scheduling_csv",
811
+ "last_run": null
812
+ },
813
+ {
814
+ "title": "Tempe Grade Export",
815
+ "parameters": {
816
+ "enrollment_term_id": {
817
+ "required": true,
818
+ "description": "The term for grade export data"
819
+ },
820
+ "course_id": {
821
+ "required": false,
822
+ "description": "The course id for the grade export data"
823
+ }
824
+ },
825
+ "report": "tempe_grade_export_csv",
826
+ "last_run": null
827
+ },
828
+ {
829
+ "title": "Learning Outcome and Assignment Type",
830
+ "parameters": {
831
+ "enrollment_term_id": {
832
+ "required": true,
833
+ "description": "The term for export data"
834
+ },
835
+ "course_id": {
836
+ "required": false,
837
+ "description": "The course id for the export data"
838
+ }
839
+ },
840
+ "report": "learning_outcome_assignment_type_csv",
841
+ "last_run": null
842
+ },
843
+ {
844
+ "title": "Campus Vue Submission Data",
845
+ "parameters": {
846
+ "enrollment_term_id": {
847
+ "required": false,
848
+ "description": "The term to report on"
849
+ },
850
+ "course_id": {
851
+ "required": false,
852
+ "description": "The course to report on"
853
+ },
854
+ "start_at": {
855
+ "required": false,
856
+ "description": "Everything updated after start date"
857
+ }
858
+ },
859
+ "report": "cv_submission_data_csv",
860
+ "last_run": null
861
+ }
862
+ ]
@@ -0,0 +1,25 @@
1
+ {
2
+ "id": 72,
3
+ "parameters": {},
4
+ "progress": 100,
5
+ "status": "complete",
6
+ "report": "last_user_access_csv",
7
+ "file_url": "https://localhost:3000/accounts/1/files/679/download",
8
+ "attachment": {
9
+ "id": 679,
10
+ "content-type": "text/csv",
11
+ "display_name": "last_user_access_csv_23_Jan_2014_72_14345-0.csv",
12
+ "filename": "1390497025_763__last_user_access_csv_23_Jan_2014_71_14345-0.csv",
13
+ "url": "http://localhost:3000/files/679/download?download_frd=1&verifier=BfzTimBCj3Tg430dTx8CW6e6qJQsQIzZJfgcdjd1",
14
+ "size": 13350,
15
+ "created_at": "2014-01-23T17:10:53Z",
16
+ "updated_at": "2014-01-23T17:10:53Z",
17
+ "unlock_at": null,
18
+ "locked": false,
19
+ "hidden": false,
20
+ "lock_at": null,
21
+ "hidden_for_user": false,
22
+ "thumbnail_url": null,
23
+ "locked_for_user": false
24
+ }
25
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "id": 72,
3
+ "parameters": null,
4
+ "progress": 0,
5
+ "status": "running",
6
+ "report": "last_user_access_csv",
7
+ "file_url": null
8
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bearcat
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.8'
4
+ version: '0.9'
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-01-22 00:00:00.000000000 Z
12
+ date: 2014-01-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -125,6 +125,7 @@ files:
125
125
  - lib/bearcat/client/o_auth2.rb
126
126
  - lib/bearcat/client/outcome_groups.rb
127
127
  - lib/bearcat/client/outcomes.rb
128
+ - lib/bearcat/client/reports.rb
128
129
  - lib/bearcat/client/sections.rb
129
130
  - lib/bearcat/client/users.rb
130
131
  - lib/bearcat/client.rb
@@ -138,6 +139,7 @@ files:
138
139
  - spec/bearcat/client/o_auth2_spec.rb
139
140
  - spec/bearcat/client/outcome_groups_spec.rb
140
141
  - spec/bearcat/client/outcomes_spec.rb
142
+ - spec/bearcat/client/reports_spec.rb
141
143
  - spec/bearcat/client/sections_spec.rb
142
144
  - spec/bearcat/client/users_spec.rb
143
145
  - spec/bearcat/client_spec.rb
@@ -167,8 +169,12 @@ files:
167
169
  - spec/fixtures/outcome_subgroups.json
168
170
  - spec/fixtures/outcomes.json
169
171
  - spec/fixtures/paged_body.json
172
+ - spec/fixtures/report_history.json
173
+ - spec/fixtures/report_list.json
174
+ - spec/fixtures/report_status.json
170
175
  - spec/fixtures/section.json
171
176
  - spec/fixtures/section_enrollments.json
177
+ - spec/fixtures/start_report.json
172
178
  - spec/fixtures/update_outcome.json
173
179
  - spec/fixtures/update_outcome_group.json
174
180
  - spec/fixtures/update_section.json
@@ -207,6 +213,7 @@ test_files:
207
213
  - spec/bearcat/client/o_auth2_spec.rb
208
214
  - spec/bearcat/client/outcome_groups_spec.rb
209
215
  - spec/bearcat/client/outcomes_spec.rb
216
+ - spec/bearcat/client/reports_spec.rb
210
217
  - spec/bearcat/client/sections_spec.rb
211
218
  - spec/bearcat/client/users_spec.rb
212
219
  - spec/bearcat/client_spec.rb
@@ -236,8 +243,12 @@ test_files:
236
243
  - spec/fixtures/outcome_subgroups.json
237
244
  - spec/fixtures/outcomes.json
238
245
  - spec/fixtures/paged_body.json
246
+ - spec/fixtures/report_history.json
247
+ - spec/fixtures/report_list.json
248
+ - spec/fixtures/report_status.json
239
249
  - spec/fixtures/section.json
240
250
  - spec/fixtures/section_enrollments.json
251
+ - spec/fixtures/start_report.json
241
252
  - spec/fixtures/update_outcome.json
242
253
  - spec/fixtures/update_outcome_group.json
243
254
  - spec/fixtures/update_section.json