canvas_sync 0.20.1 → 0.20.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d62d3319fd41f63dfadc619b59f28949b9e418f4017c0ca395ba98f62cea3a5
4
- data.tar.gz: 789f76fc7c75a901a93e841fe1d883c635af40e1772191e30682e1837d92ca7e
3
+ metadata.gz: 578ebb656c72bc55c70804e7323b57504cca83ec93ca0ae5b0dcf0a07434e4a0
4
+ data.tar.gz: 11ae59aa81559ce4f7937c5b5047f764b66d6c2025f95ab109287716769d387e
5
5
  SHA512:
6
- metadata.gz: 373e4d1f08b87e585620625aa0fd15fd153fbd277b8ee81f195333a0fbc7e9e2b24aa558d63e06b9b71bbe9cbffa2f7f10f3a5b7c7a82f33566b515762356cc2
7
- data.tar.gz: 856f8387e65df480460780a881d20764fce8dc7c78878940ba46f6b58cf6012be83cbb824c3cc5dd1c995b798a41b35492d9ab77c9194332a0748ace9dbca608
6
+ metadata.gz: d78e19a78aa4ebd1106b87d09779d859788a78bce8501bf1550fd6348a3e482effab2a19bd829d5bf455ee9ef6811326a384c485e3baa06d77b35b3a1270e8df
7
+ data.tar.gz: 54ffcd2cdc26b995f9021d9ad7a755088a255b399ff120ec4247744f195da847a51972e6c5822cdbf064de42483f7ad9f7894f6844eb132a7d1437068fdc9baf
@@ -0,0 +1,46 @@
1
+ # <%= autogenerated_migration_warning %>
2
+
3
+ class CreateLearningOutcomeResults < ActiveRecord::Migration[5.1]
4
+ def change
5
+ create_table :learning_outcome_results do |t|
6
+ t.bigint :canvas_id, null: false
7
+ t.bigint :canvas_context_id
8
+ t.string :canvas_context_type
9
+ t.bigint :canvas_association_id
10
+ t.string :canvas_association_type
11
+ t.bigint :canvas_content_tag_id
12
+ t.bigint :canvas_learning_outcome_id
13
+ t.bigint :canvas_user_id
14
+ t.boolean :mastery
15
+ t.boolean :original_mastery
16
+ t.bigint :canvas_artifact_id
17
+ t.string :canvas_artifact_type
18
+ t.datetime :assessed_at
19
+ t.string :title
20
+ t.float :percent
21
+ t.bigint :canvas_associated_asset_id
22
+ t.string :canvas_associated_asset_type
23
+ t.integer :attempt
24
+ t.float :score
25
+ t.float :possible
26
+ t.float :original_score
27
+ t.float :original_possible
28
+ t.string :workflow_state
29
+
30
+ t.timestamps
31
+ end
32
+
33
+ add_index :learning_outcome_results, :canvas_id, unique: true
34
+ add_index :learning_outcome_results, %i[
35
+ canvas_user_id
36
+ canvas_content_tag_id
37
+ canvas_association_id
38
+ canvas_association_type
39
+ canvas_associated_asset_id
40
+ canvas_associated_asset_type
41
+ ], unique: true, name: :index_learning_outcome_results_association
42
+ add_index :learning_outcome_results, :canvas_content_tag_id
43
+ add_index :learning_outcome_results, :canvas_learning_outcome_id
44
+ add_index :learning_outcome_results, %i[canvas_artifact_id canvas_artifact_type], name: :index_learning_outcome_results_on_canvas_arid_and_artype
45
+ end
46
+ end
@@ -20,7 +20,6 @@ class CreateLearningOutcomes < ActiveRecord::Migration[5.1]
20
20
  t.integer :outcome_import_id
21
21
  t.integer :root_account_ids, array: true, default: []
22
22
  t.text :description
23
- t.text :short_description
24
23
 
25
24
  t.timestamps
26
25
  end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ # # <%= autogenerated_model_warning %>
4
+
5
+ class LearningOutcomeResult < ActiveRecord::Base
6
+ include CanvasSync::Record
7
+ include CanvasSync::Concerns::ApiSyncable
8
+
9
+ belongs_to :user, primary_key: :canvas_id, foreign_key: :canvas_user_id, optional: true
10
+ belongs_to :learning_outcome, primary_key: :canvas_id, foreign_key: :canvas_learning_outcome_id, optional: true
11
+ belongs_to :alignment, class_name: "ContentTag", primary_key: :canvas_id, foreign_key: :canvas_content_tag_id, optional: true
12
+ belongs_to :association_object,
13
+ polymorphic: [:rubric_association, :assignment],
14
+ foreign_key: :association_id,
15
+ foreign_type: :association_type,
16
+ optional: true
17
+ belongs_to :artifact,
18
+ polymorphic: [:rubric_assessment, :submission],
19
+ primary_key: :canvas_artifact_id,
20
+ foreign_key: :canvas_artifact_id,
21
+ foreign_type: :canvas_artifact_type,
22
+ optional: true
23
+
24
+ belongs_to :context, polymorphic: [:course], primary_key: :canvas_id, foreign_key: :canvas_context_id, foreign_type: :canvas_context_type, optional: true
25
+
26
+ # Not yet implemented in CanvasSync
27
+ # belongs_to :associated_asset,
28
+ # polymorphic:
29
+ # [:assessment_question,
30
+ # :assignment,
31
+ # { quiz: "Quizzes::Quiz", assessment: "LiveAssessments::Assessment" }],
32
+ # polymorphic_prefix: true
33
+
34
+ # Not yet implemented in CanvasSync
35
+ # has_many :learning_outcome_question_results, dependent: :destroy
36
+
37
+ api_syncable({
38
+ canvas_id: :id,
39
+ canvas_content_tag_id: :links&.[]("alignment"),
40
+ canvas_learning_outcome_id: :links&.[]("learning_outcome"),
41
+ canvas_user_id: :links&.[]("user"),
42
+ score: :score,
43
+ assessed_at: :submitted_or_assessed_at,
44
+ percent: :percent
45
+ }, ->(api) {
46
+ api.get("/api/v1/courses/#{self.canvas_context_id}/#{self.canvas_id}")&.find { |item| item[:id] == self.canvas_id }
47
+ })
48
+ end
@@ -5,7 +5,7 @@ module CanvasSync
5
5
  # Enqueues the ReportProcessor when the report has completed.
6
6
  class ReportChecker < CanvasSync::Job
7
7
  REPORT_TIMEOUT = 24.hours
8
- COMPILATION_TIMEOUT = 1.hour
8
+ COMPILATION_TIMEOUT = 3.hours
9
9
  MAX_TRIES = 3
10
10
 
11
11
  class FatalReportError < ::RuntimeError; end
@@ -565,9 +565,79 @@ learning_outcomes:
565
565
  description:
566
566
  database_column_name: description
567
567
  type: string
568
- short_description:
569
- database_column_name: short_description
570
- type: text
568
+
569
+ learning_outcome_results:
570
+ conflict_target: id
571
+ report_columns:
572
+ id:
573
+ database_column_name: canvas_id
574
+ type: integer
575
+ context_id:
576
+ database_column_name: canvas_context_id
577
+ type: integer
578
+ context_type:
579
+ database_column_name: canvas_context_type
580
+ type: string
581
+ association_id:
582
+ database_column_name: canvas_association_id
583
+ type: integer
584
+ association_type:
585
+ database_column_name: canvas_association_type
586
+ type: string
587
+ content_tag_id:
588
+ database_column_name: canvas_content_tag_id
589
+ type: integer
590
+ learning_outcome_id:
591
+ database_column_name: canvas_learning_outcome_id
592
+ type: integer
593
+ user_id:
594
+ database_column_name: canvas_user_id
595
+ type: integer
596
+ mastery:
597
+ database_column_name: mastery
598
+ type: boolean
599
+ original_mastery:
600
+ database_column_name: original_mastery
601
+ type: boolean
602
+ artifact_id:
603
+ database_column_name: canvas_artifact_id
604
+ type: integer
605
+ artifact_type:
606
+ database_column_name: canvas_artifact_type
607
+ type: string
608
+ assessed_at:
609
+ database_column_name: assessed_at
610
+ type: datetime
611
+ title:
612
+ database_column_name: title
613
+ type: string
614
+ percent:
615
+ database_column_name: percent
616
+ type: float
617
+ associated_asset_id:
618
+ database_column_name: canvas_associated_asset_id
619
+ type: integer
620
+ associated_asset_type:
621
+ database_column_name: canvas_associated_asset_type
622
+ type: string
623
+ attempt:
624
+ database_column_name: attempt
625
+ type: integer
626
+ score:
627
+ database_column_name: score
628
+ type: float
629
+ possible:
630
+ database_column_name: possible
631
+ type: float
632
+ original_score:
633
+ database_column_name: original_score
634
+ type: float
635
+ original_possible:
636
+ database_column_name: original_possible
637
+ type: float
638
+ workflow_state:
639
+ database_column_name: workflow_state
640
+ type: string
571
641
 
572
642
  course_nicknames:
573
643
  conflict_target:
@@ -124,6 +124,10 @@ module CanvasSync
124
124
  end
125
125
  end
126
126
 
127
+ def bulk_process_learning_outcome_results(report_file_path)
128
+ do_bulk_import(report_file_path, LearningOutcomeResult, options: @options)
129
+ end
130
+
127
131
  def bulk_process_course_nicknames(report_file_path)
128
132
  exists = []
129
133
  do_bulk_import(report_file_path, CourseNickname, options: @options) do |row|
@@ -1,3 +1,3 @@
1
1
  module CanvasSync
2
- VERSION = "0.20.1".freeze
2
+ VERSION = "0.20.4".freeze
3
3
  end
data/lib/canvas_sync.rb CHANGED
@@ -46,6 +46,7 @@ module CanvasSync
46
46
  grading_period_groups
47
47
  content_migrations
48
48
  learning_outcomes
49
+ learning_outcome_results
49
50
  course_nicknames
50
51
  rubrics
51
52
  rubric_associations
@@ -214,7 +215,7 @@ module CanvasSync
214
215
  end
215
216
 
216
217
  current_chain.insert(
217
- generate_provisioning_jobs(models, options)
218
+ generate_provisioning_jobs(models - ['terms'], options)
218
219
  )
219
220
 
220
221
  # Skip syncing terms if not required
@@ -131,6 +131,18 @@ RSpec.describe CanvasSync::Processors::ProvisioningReportProcessor do
131
131
  }.to change { LearningOutcome.count }.by(2)
132
132
  end
133
133
 
134
+ it 'processes learning_outcome_results' do
135
+ expect {
136
+ subject.process('spec/support/fixtures/reports/learning_outcome_results.csv', { models: ['learning_outcome_results'] }, 1)
137
+ }.to change { LearningOutcomeResult.count }.by(2)
138
+
139
+ columns = LearningOutcomeResult.attribute_names - ['id', 'created_at', 'updated_at']
140
+ expect(LearningOutcomeResult.all.pluck(columns.join(','))).to eq([
141
+ [1, 1, 'Course', 1, 'RubricAssociation', 1, 1, 1, true, true, 1, 'RubricAssessment', '2012-01-01T00:00:00Z', 'Learning Outcome Result 1', 1.0, 1, 'LearningOutcomeGroup', 1, 5.0, 5.0, 5.0, 5.0, 'active'],
142
+ [2, 2, 'Course', 2, 'RubricAssociation', 2, 2, 2, true, true, 2, 'RubricAssessment', '2013-01-01T00:00:00Z', 'Learning Outcome Result 2', 2.0, 2, 'LearningOutcomeGroup', 1, 10.0, 10.0, 10.0, 10.0, 'active']
143
+ ])
144
+ end
145
+
134
146
  it 'processes course_nicknames' do
135
147
  CourseNickname.create(canvas_user_preference_value_id: 42, canvas_course_id: 42, canvas_user_id: 42, nickname: 'test')
136
148
  expect(CourseNickname.all.pluck(:canvas_user_preference_value_id)).to include(42)
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ # # #
4
+ # AUTO GENERATED MIGRATION
5
+ # This migration was auto generated by the CanvasSync Gem.
6
+ # You can add new columns to this table, but removing or
7
+ # re-naming ones created here may break Canvas Syncing.
8
+ #
9
+
10
+
11
+ class LearningOutcomeResult < ActiveRecord::Base
12
+ include CanvasSync::Record
13
+ include CanvasSync::Concerns::ApiSyncable
14
+
15
+ belongs_to :user, primary_key: :canvas_id, foreign_key: :canvas_user_id, optional: true
16
+ belongs_to :learning_outcome, primary_key: :canvas_id, foreign_key: :canvas_learning_outcome_id, optional: true
17
+ belongs_to :alignment, class_name: "ContentTag", primary_key: :canvas_id, foreign_key: :canvas_content_tag_id, optional: true
18
+ belongs_to :association_object,
19
+ polymorphic: [:rubric_association, :assignment],
20
+ foreign_key: :association_id,
21
+ foreign_type: :association_type,
22
+ optional: true
23
+ belongs_to :artifact,
24
+ polymorphic: [:rubric_assessment, :submission],
25
+ primary_key: :canvas_artifact_id,
26
+ foreign_key: :canvas_artifact_id,
27
+ foreign_type: :canvas_artifact_type,
28
+ optional: true
29
+
30
+ belongs_to :context, polymorphic: [:course], primary_key: :canvas_id, foreign_key: :canvas_context_id, foreign_type: :canvas_context_type, optional: true
31
+
32
+ # Not yet implemented in CanvasSync
33
+ # belongs_to :associated_asset,
34
+ # polymorphic:
35
+ # [:assessment_question,
36
+ # :assignment,
37
+ # { quiz: "Quizzes::Quiz", assessment: "LiveAssessments::Assessment" }],
38
+ # polymorphic_prefix: true
39
+
40
+ # Not yet implemented in CanvasSync
41
+ # has_many :learning_outcome_question_results, dependent: :destroy
42
+
43
+ api_syncable({
44
+ canvas_id: :id,
45
+ canvas_content_tag_id: :links&.[]("alignment"),
46
+ canvas_learning_outcome_id: :links&.[]("learning_outcome"),
47
+ canvas_user_id: :links&.[]("user"),
48
+ score: :score,
49
+ assessed_at: :submitted_or_assessed_at,
50
+ percent: :percent
51
+ }, ->(api) {
52
+ api.get("/api/v1/courses/#{self.canvas_context_id}/#{self.canvas_id}")&.find { |item| item[:id] == self.canvas_id }
53
+ })
54
+ end
@@ -26,7 +26,6 @@ class CreateLearningOutcomes < ActiveRecord::Migration[5.1]
26
26
  t.integer :outcome_import_id
27
27
  t.integer :root_account_ids, array: true, default: []
28
28
  t.text :description
29
- t.text: :short_description
30
29
 
31
30
  t.timestamps
32
31
  end
@@ -0,0 +1,52 @@
1
+ # #
2
+ # AUTO GENERATED MIGRATION
3
+ # This migration was auto generated by the CanvasSync Gem.
4
+ # You can add new columns to this table, but removing or
5
+ # re-naming ones created here may break Canvas Syncing.
6
+ #
7
+
8
+
9
+ class CreateLearningOutcomeResults < ActiveRecord::Migration[5.1]
10
+ def change
11
+ create_table :learning_outcome_results do |t|
12
+ t.bigint :canvas_id, null: false
13
+ t.bigint :canvas_context_id
14
+ t.string :canvas_context_type
15
+ t.bigint :canvas_association_id
16
+ t.string :canvas_association_type
17
+ t.bigint :canvas_content_tag_id
18
+ t.bigint :canvas_learning_outcome_id
19
+ t.bigint :canvas_user_id
20
+ t.boolean :mastery
21
+ t.boolean :original_mastery
22
+ t.bigint :canvas_artifact_id
23
+ t.string :canvas_artifact_type
24
+ t.datetime :assessed_at
25
+ t.string :title
26
+ t.float :percent
27
+ t.bigint :canvas_associated_asset_id
28
+ t.string :canvas_associated_asset_type
29
+ t.integer :attempt
30
+ t.float :score
31
+ t.float :possible
32
+ t.float :original_score
33
+ t.float :original_possible
34
+ t.string :workflow_state
35
+
36
+ t.timestamps
37
+ end
38
+
39
+ add_index :learning_outcome_results, :canvas_id, unique: true
40
+ add_index :learning_outcome_results, %i[
41
+ canvas_user_id
42
+ canvas_content_tag_id
43
+ canvas_association_id
44
+ canvas_association_type
45
+ canvas_associated_asset_id
46
+ canvas_associated_asset_type
47
+ ], unique: true, name: :index_learning_outcome_results_association
48
+ add_index :learning_outcome_results, :canvas_content_tag_id
49
+ add_index :learning_outcome_results, :canvas_learning_outcome_id
50
+ add_index :learning_outcome_results, %i[canvas_artifact_id canvas_artifact_type], name: :index_learning_outcome_results_on_canvas_arid_and_artype
51
+ end
52
+ end
@@ -10,7 +10,7 @@
10
10
  #
11
11
  # It's strongly recommended that you check this file into your version control system.
12
12
 
13
- ActiveRecord::Schema.define(version: 2024_05_10_101100) do
13
+ ActiveRecord::Schema.define(version: 2024_05_23_101010) do
14
14
 
15
15
  # These are extensions that must be enabled in order to support this database
16
16
  enable_extension "plpgsql"
@@ -275,13 +275,52 @@ ActiveRecord::Schema.define(version: 2024_05_10_101100) do
275
275
  t.integer "outcome_import_id"
276
276
  t.integer "root_account_ids", default: [], array: true
277
277
  t.text "description"
278
- t.text "short_description"
279
278
  t.datetime "created_at", null: false
280
279
  t.datetime "updated_at", null: false
281
280
  t.index ["canvas_context_id", "canvas_context_type"], name: "index_learning_outcomes_on_context"
282
281
  t.index ["canvas_id"], name: "index_learning_outcomes_on_canvas_id", unique: true
283
282
  end
284
283
 
284
+ create_table "learning_outcome_results", force: :cascade do |t|
285
+ t.bigint "canvas_id", null: false
286
+ t.bigint "canvas_context_id"
287
+ t.string "canvas_context_type"
288
+ t.bigint "canvas_association_id"
289
+ t.string "canvas_association_type"
290
+ t.bigint "canvas_content_tag_id"
291
+ t.bigint "canvas_learning_outcome_id"
292
+ t.bigint "canvas_user_id"
293
+ t.boolean "mastery"
294
+ t.boolean "original_mastery"
295
+ t.bigint "canvas_artifact_id"
296
+ t.string "canvas_artifact_type"
297
+ t.datetime "assessed_at"
298
+ t.string "title"
299
+ t.float "percent"
300
+ t.bigint "canvas_associated_asset_id"
301
+ t.string "canvas_associated_asset_type"
302
+ t.integer "attempt"
303
+ t.float "score"
304
+ t.float "possible"
305
+ t.float "original_score"
306
+ t.float "original_possible"
307
+ t.string "workflow_state"
308
+ t.datetime "created_at", null: false
309
+ t.datetime "updated_at", null: false
310
+ t.index "canvas_id", unique: true
311
+ t.index [
312
+ "canvas_user_id",
313
+ "canvas_content_tag_id",
314
+ "canvas_association_id",
315
+ "canvas_association_type",
316
+ "canvas_associated_asset_id",
317
+ "canvas_associated_asset_type"
318
+ ], unique: true, name: 'index_learning_outcome_results_association'
319
+ t.index "canvas_content_tag_id"
320
+ t.index "canvas_learning_outcome_id"
321
+ t.index ["canvas_artifact_id", "canvas_artifact_type"], name: "index_learning_outcome_results_on_canvas_arid_and_artype"
322
+ end
323
+
285
324
  create_table "pseudonyms", force: :cascade do |t|
286
325
  t.bigint "canvas_id", null: false
287
326
  t.bigint "canvas_user_id"
@@ -0,0 +1,3 @@
1
+ id,context_id,context_type,association_id,association_type,content_tag_id,learning_outcome_id,user_id,mastery,original_mastery,artifact_id,artifact_type,assessed_at,title,percent,associated_asset_id,associated_asset_type,attempt,score,possible,original_score,original_possible,workflow_state
2
+ 1,1,Course,1,RubricAssociation,1,1,1,true,true,1,RubricAssessment,2012-01-01T00:00:00Z,Learning Outcome Result 1,1.0,1,LearningOutcomeGroup,1,5.0,5.0,5.0,5.0,active
3
+ 2,2,Course,2,RubricAssociation,2,2,2,true,true,2,RubricAssessment,2013-01-01T00:00:00Z,Learning Outcome Result 2,2.0,2,LearningOutcomeGroup,1,10.0,10.0,10.0,10.0,active
@@ -1,3 +1,3 @@
1
- learning_outcome_id,context_id,context_type,name,friendly_name,workflow_state,created_at,updated_at,migration_id,vendor_guid,low_grade,high_grade,calculation_method,calculation_int,outcome_import_id,root_account_ids,description,short_description
2
- 1,1,Course,Course Outcome,"",active,2021-08-12 21:11:40 UTC,2021-08-13 01:05:40 UTC,,,,,decaying_average,65,,[1],<p>description</p>,Short description
3
- 2,1,Account,Account Outcome,Friendly Name,active,2021-08-12 21:11:40 UTC,2021-08-13 01:05:40 UTC,,,,,decaying_average,65,,[1],<p>description</p>,Short description2
1
+ learning_outcome_id,context_id,context_type,name,friendly_name,workflow_state,created_at,updated_at,migration_id,vendor_guid,low_grade,high_grade,calculation_method,calculation_int,outcome_import_id,root_account_ids,description
2
+ 1,1,Course,Course Outcome,"",active,2021-08-12 21:11:40 UTC,2021-08-13 01:05:40 UTC,,,,,decaying_average,65,,[1],<p>description</p>
3
+ 2,1,Account,Account Outcome,Friendly Name,active,2021-08-12 21:11:40 UTC,2021-08-13 01:05:40 UTC,,,,,decaying_average,65,,[1],<p>description</p>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: canvas_sync
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.1
4
+ version: 0.20.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Instructure CustomDev
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-28 00:00:00.000000000 Z
11
+ date: 2024-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -388,7 +388,7 @@ dependencies:
388
388
  - - ">="
389
389
  - !ruby/object:Gem::Version
390
390
  version: '0'
391
- description:
391
+ description:
392
392
  email:
393
393
  - pseng@instructure.com
394
394
  executables: []
@@ -415,7 +415,6 @@ files:
415
415
  - lib/canvas_sync/concerns/account/ancestry.rb
416
416
  - lib/canvas_sync/concerns/account/base.rb
417
417
  - lib/canvas_sync/concerns/api_syncable.rb
418
- - lib/canvas_sync/concerns/auto_relations.rb
419
418
  - lib/canvas_sync/concerns/legacy_columns.rb
420
419
  - lib/canvas_sync/concerns/role/base.rb
421
420
  - lib/canvas_sync/concerns/sync_mapping.rb
@@ -437,6 +436,7 @@ files:
437
436
  - lib/canvas_sync/generators/templates/migrations/create_grading_periods.rb
438
437
  - lib/canvas_sync/generators/templates/migrations/create_group_memberships.rb
439
438
  - lib/canvas_sync/generators/templates/migrations/create_groups.rb
439
+ - lib/canvas_sync/generators/templates/migrations/create_learning_outcome_results.rb
440
440
  - lib/canvas_sync/generators/templates/migrations/create_learning_outcomes.rb
441
441
  - lib/canvas_sync/generators/templates/migrations/create_pseudonyms.rb
442
442
  - lib/canvas_sync/generators/templates/migrations/create_roles.rb
@@ -463,6 +463,7 @@ files:
463
463
  - lib/canvas_sync/generators/templates/models/group.rb
464
464
  - lib/canvas_sync/generators/templates/models/group_membership.rb
465
465
  - lib/canvas_sync/generators/templates/models/learning_outcome.rb
466
+ - lib/canvas_sync/generators/templates/models/learning_outcome_result.rb
466
467
  - lib/canvas_sync/generators/templates/models/pseudonym.rb
467
468
  - lib/canvas_sync/generators/templates/models/role.rb
468
469
  - lib/canvas_sync/generators/templates/models/rubric.rb
@@ -621,6 +622,7 @@ files:
621
622
  - spec/dummy/app/models/group.rb
622
623
  - spec/dummy/app/models/group_membership.rb
623
624
  - spec/dummy/app/models/learning_outcome.rb
625
+ - spec/dummy/app/models/learning_outcome_result.rb
624
626
  - spec/dummy/app/models/pseudonym.rb
625
627
  - spec/dummy/app/models/role.rb
626
628
  - spec/dummy/app/models/rubric.rb
@@ -698,6 +700,7 @@ files:
698
700
  - spec/dummy/db/migrate/20240509105100_create_rubrics.rb
699
701
  - spec/dummy/db/migrate/20240510094100_create_rubric_associations.rb
700
702
  - spec/dummy/db/migrate/20240510101100_create_rubric_assessments.rb
703
+ - spec/dummy/db/migrate/20240523101010_create_learning_outcome_results.rb
701
704
  - spec/dummy/db/schema.rb
702
705
  - spec/factories/account_factory.rb
703
706
  - spec/factories/admin_factory.rb
@@ -749,10 +752,9 @@ files:
749
752
  - spec/support/fixtures/reports/grading_periods.csv
750
753
  - spec/support/fixtures/reports/group_memberships.csv
751
754
  - spec/support/fixtures/reports/groups.csv
755
+ - spec/support/fixtures/reports/learning_outcome_results.csv
752
756
  - spec/support/fixtures/reports/learning_outcomes.csv
753
757
  - spec/support/fixtures/reports/provisioning_csv
754
- - spec/support/fixtures/reports/provisioning_csv_unzipped/courses.csv
755
- - spec/support/fixtures/reports/provisioning_csv_unzipped/users.csv
756
758
  - spec/support/fixtures/reports/rubric_assessments.csv
757
759
  - spec/support/fixtures/reports/rubric_associations.csv
758
760
  - spec/support/fixtures/reports/rubrics.csv
@@ -764,7 +766,7 @@ files:
764
766
  homepage: https://instructure.com
765
767
  licenses: []
766
768
  metadata: {}
767
- post_install_message:
769
+ post_install_message:
768
770
  rdoc_options: []
769
771
  require_paths:
770
772
  - lib
@@ -779,212 +781,213 @@ required_rubygems_version: !ruby/object:Gem::Requirement
779
781
  - !ruby/object:Gem::Version
780
782
  version: '0'
781
783
  requirements: []
782
- rubygems_version: 3.1.6
783
- signing_key:
784
+ rubygems_version: 3.4.10
785
+ signing_key:
784
786
  specification_version: 4
785
787
  summary: Gem for generating Canvas models and migrations and syncing data from Canvas
786
788
  test_files:
787
- - spec/canvas_sync/services/module_event_spec.rb
788
- - spec/canvas_sync/services/module_item_event_spec.rb
789
+ - spec/canvas_sync/canvas_sync_spec.rb
790
+ - spec/canvas_sync/jobs/canvas_process_waiter_spec.rb
791
+ - spec/canvas_sync/jobs/job_spec.rb
792
+ - spec/canvas_sync/jobs/report_checker_spec.rb
793
+ - spec/canvas_sync/jobs/report_processor_job_spec.rb
794
+ - spec/canvas_sync/jobs/report_starter_spec.rb
795
+ - spec/canvas_sync/jobs/sync_admins_job_spec.rb
796
+ - spec/canvas_sync/jobs/sync_assignment_groups_job_spec.rb
797
+ - spec/canvas_sync/jobs/sync_assignments_job_spec.rb
798
+ - spec/canvas_sync/jobs/sync_content_migrations_job_spec.rb
799
+ - spec/canvas_sync/jobs/sync_context_module_items_job_spec.rb
800
+ - spec/canvas_sync/jobs/sync_context_modules_job_spec.rb
801
+ - spec/canvas_sync/jobs/sync_provisioning_report_job_spec.rb
802
+ - spec/canvas_sync/jobs/sync_roles_job_spec.rb
803
+ - spec/canvas_sync/jobs/sync_simple_table_job_spec.rb
804
+ - spec/canvas_sync/jobs/sync_submissions_job_spec.rb
805
+ - spec/canvas_sync/jobs/sync_terms_job_spec.rb
806
+ - spec/canvas_sync/misc_helper_spec.rb
807
+ - spec/canvas_sync/models/accounts_spec.rb
789
808
  - spec/canvas_sync/models/admins_spec.rb
809
+ - spec/canvas_sync/models/assignment_group_spec.rb
790
810
  - spec/canvas_sync/models/assignment_spec.rb
811
+ - spec/canvas_sync/models/context_module_item_spec.rb
791
812
  - spec/canvas_sync/models/context_module_spec.rb
813
+ - spec/canvas_sync/models/course_spec.rb
814
+ - spec/canvas_sync/models/enrollment_spec.rb
792
815
  - spec/canvas_sync/models/group_membership_spec.rb
793
- - spec/canvas_sync/models/context_module_item_spec.rb
816
+ - spec/canvas_sync/models/group_spec.rb
794
817
  - spec/canvas_sync/models/roles_spec.rb
795
- - spec/canvas_sync/models/accounts_spec.rb
796
818
  - spec/canvas_sync/models/section_spec.rb
797
- - spec/canvas_sync/models/group_spec.rb
798
819
  - spec/canvas_sync/models/submission_spec.rb
799
820
  - spec/canvas_sync/models/term_spec.rb
800
- - spec/canvas_sync/models/enrollment_spec.rb
801
- - spec/canvas_sync/models/course_spec.rb
802
821
  - spec/canvas_sync/models/user_spec.rb
803
- - spec/canvas_sync/models/assignment_group_spec.rb
804
- - spec/canvas_sync/misc_helper_spec.rb
805
- - spec/canvas_sync/jobs/sync_context_module_items_job_spec.rb
806
- - spec/canvas_sync/jobs/sync_terms_job_spec.rb
807
- - spec/canvas_sync/jobs/sync_context_modules_job_spec.rb
808
- - spec/canvas_sync/jobs/sync_assignments_job_spec.rb
809
- - spec/canvas_sync/jobs/sync_provisioning_report_job_spec.rb
810
- - spec/canvas_sync/jobs/sync_assignment_groups_job_spec.rb
811
- - spec/canvas_sync/jobs/sync_admins_job_spec.rb
812
- - spec/canvas_sync/jobs/report_starter_spec.rb
813
- - spec/canvas_sync/jobs/sync_content_migrations_job_spec.rb
814
- - spec/canvas_sync/jobs/job_spec.rb
815
- - spec/canvas_sync/jobs/report_processor_job_spec.rb
816
- - spec/canvas_sync/jobs/canvas_process_waiter_spec.rb
817
- - spec/canvas_sync/jobs/sync_submissions_job_spec.rb
818
- - spec/canvas_sync/jobs/report_checker_spec.rb
819
- - spec/canvas_sync/jobs/sync_roles_job_spec.rb
820
- - spec/canvas_sync/jobs/sync_simple_table_job_spec.rb
821
- - spec/canvas_sync/canvas_sync_spec.rb
822
- - spec/canvas_sync/processors/provisioning_report_processor_spec.rb
823
- - spec/canvas_sync/processors/content_migrations_processor_spec.rb
822
+ - spec/canvas_sync/processors/assignment_groups_processor_spec.rb
824
823
  - spec/canvas_sync/processors/assignments_processor_spec.rb
825
- - spec/canvas_sync/processors/normal_processor_spec.rb
826
- - spec/canvas_sync/processors/rubrics_processor_spec.rb
824
+ - spec/canvas_sync/processors/content_migrations_processor_spec.rb
825
+ - spec/canvas_sync/processors/context_module_items_processor_spec.rb
827
826
  - spec/canvas_sync/processors/context_modules_processor_spec.rb
828
- - spec/canvas_sync/processors/assignment_groups_processor_spec.rb
827
+ - spec/canvas_sync/processors/normal_processor_spec.rb
828
+ - spec/canvas_sync/processors/provisioning_report_processor_spec.rb
829
+ - spec/canvas_sync/processors/rubric_assessments_spec.rb
829
830
  - spec/canvas_sync/processors/rubric_associations_spec.rb
831
+ - spec/canvas_sync/processors/rubrics_processor_spec.rb
830
832
  - spec/canvas_sync/processors/submissions_processor_spec.rb
831
- - spec/canvas_sync/processors/context_module_items_processor_spec.rb
832
- - spec/canvas_sync/processors/rubric_assessments_spec.rb
833
- - spec/job_batching/integration_helper.rb
834
- - spec/job_batching/pool_spec.rb
835
- - spec/job_batching/integration/integration.rb
836
- - spec/job_batching/integration/workflow.rb
837
- - spec/job_batching/integration/fail_then_succeed.rb
838
- - spec/job_batching/integration/nested.rb
839
- - spec/job_batching/integration/simple.rb
840
- - spec/job_batching/active_job_spec.rb
841
- - spec/job_batching/status_spec.rb
842
- - spec/job_batching/callback_spec.rb
843
- - spec/job_batching/sidekiq_spec.rb
844
- - spec/job_batching/support/base_job.rb
845
- - spec/job_batching/support/sample_callback.rb
846
- - spec/job_batching/batch_spec.rb
847
- - spec/job_batching/flow_spec.rb
848
- - spec/job_batching/context_hash_spec.rb
849
- - spec/spec_helper.rb
850
- - spec/support/fake_canvas.rb
851
- - spec/support/fixtures/reports/submissions.csv
852
- - spec/support/fixtures/reports/assignments.csv
853
- - spec/support/fixtures/reports/user_observers.csv
854
- - spec/support/fixtures/reports/xlist.csv
855
- - spec/support/fixtures/reports/sections.csv
856
- - spec/support/fixtures/reports/context_modules.csv
857
- - spec/support/fixtures/reports/users.csv
858
- - spec/support/fixtures/reports/grading_period_groups.csv
859
- - spec/support/fixtures/reports/learning_outcomes.csv
860
- - spec/support/fixtures/reports/groups.csv
861
- - spec/support/fixtures/reports/courses.csv
862
- - spec/support/fixtures/reports/provisioning_csv_unzipped/users.csv
863
- - spec/support/fixtures/reports/provisioning_csv_unzipped/courses.csv
864
- - spec/support/fixtures/reports/rubric_associations.csv
865
- - spec/support/fixtures/reports/assignment_groups.csv
866
- - spec/support/fixtures/reports/group_memberships.csv
867
- - spec/support/fixtures/reports/rubric_assessments.csv
868
- - spec/support/fixtures/reports/enrollments.csv
869
- - spec/support/fixtures/reports/course_nicknames.csv
870
- - spec/support/fixtures/reports/provisioning_csv
871
- - spec/support/fixtures/reports/grading_periods.csv
872
- - spec/support/fixtures/reports/rubrics.csv
873
- - spec/support/fixtures/reports/content_migrations.csv
874
- - spec/support/fixtures/reports/context_module_items.csv
875
- - spec/support/fixtures/canvas_responses/module.json
876
- - spec/support/fixtures/canvas_responses/terms.json
877
- - spec/support/fixtures/canvas_responses/admins.json
878
- - spec/support/fixtures/canvas_responses/roles.json
879
- - spec/support/fixtures/canvas_responses/module_item.json
880
- - spec/dummy/db/migrate/20201016181346_create_pseudonyms.rb
881
- - spec/dummy/db/migrate/20240510101100_create_rubric_assessments.rb
882
- - spec/dummy/db/migrate/20190702203630_create_assignment_groups.rb
883
- - spec/dummy/db/migrate/20190702203627_create_submissions.rb
884
- - spec/dummy/db/migrate/20190702203624_create_enrollments.rb
885
- - spec/dummy/db/migrate/20190702203621_create_courses.rb
886
- - spec/dummy/db/migrate/20211001184920_create_grading_period_groups.rb
887
- - spec/dummy/db/migrate/20220712210559_create_learning_outcomes.rb
888
- - spec/dummy/db/migrate/20200416214248_create_group_memberships.rb
889
- - spec/dummy/db/migrate/20220926221926_create_users.rb
890
- - spec/dummy/db/migrate/20210907233330_create_grading_periods.rb
891
- - spec/dummy/db/migrate/20190702203631_create_context_modules.rb
892
- - spec/dummy/db/migrate/20240408223326_create_course_nicknames.rb
893
- - spec/dummy/db/migrate/20240509105100_create_rubrics.rb
894
- - spec/dummy/db/migrate/20240510094100_create_rubric_associations.rb
895
- - spec/dummy/db/migrate/20190702203632_create_context_module_items.rb
896
- - spec/dummy/db/migrate/20190927204545_create_roles.rb
897
- - spec/dummy/db/migrate/20190702203622_create_accounts.rb
898
- - spec/dummy/db/migrate/20190702203626_create_assignments.rb
899
- - spec/dummy/db/migrate/20200415171620_create_groups.rb
900
- - spec/dummy/db/migrate/20190927204546_create_admins.rb
901
- - spec/dummy/db/migrate/20190702203625_create_sections.rb
902
- - spec/dummy/db/migrate/20210907233329_create_user_observers.rb
903
- - spec/dummy/db/migrate/20190702203623_create_terms.rb
904
- - spec/dummy/db/migrate/20220308072643_create_content_migrations.rb
905
- - spec/dummy/db/schema.rb
833
+ - spec/canvas_sync/services/module_event_spec.rb
834
+ - spec/canvas_sync/services/module_item_event_spec.rb
835
+ - spec/dummy/README.rdoc
906
836
  - spec/dummy/Rakefile
907
- - spec/dummy/app/services/live_events/submission_event.rb
908
- - spec/dummy/app/services/live_events/module_created_event.rb
909
- - spec/dummy/app/services/live_events/module_item_created_event.rb
910
- - spec/dummy/app/services/live_events/user_created_event.rb
837
+ - spec/dummy/app/models/account.rb
838
+ - spec/dummy/app/models/admin.rb
839
+ - spec/dummy/app/models/application_record.rb
840
+ - spec/dummy/app/models/assignment.rb
841
+ - spec/dummy/app/models/assignment_group.rb
842
+ - spec/dummy/app/models/content_migration.rb
843
+ - spec/dummy/app/models/context_module.rb
844
+ - spec/dummy/app/models/context_module_item.rb
845
+ - spec/dummy/app/models/course.rb
846
+ - spec/dummy/app/models/course_nickname.rb
847
+ - spec/dummy/app/models/enrollment.rb
848
+ - spec/dummy/app/models/grading_period.rb
849
+ - spec/dummy/app/models/grading_period_group.rb
850
+ - spec/dummy/app/models/group.rb
851
+ - spec/dummy/app/models/group_membership.rb
852
+ - spec/dummy/app/models/learning_outcome.rb
853
+ - spec/dummy/app/models/learning_outcome_result.rb
854
+ - spec/dummy/app/models/pseudonym.rb
855
+ - spec/dummy/app/models/role.rb
856
+ - spec/dummy/app/models/rubric.rb
857
+ - spec/dummy/app/models/rubric_assessment.rb
858
+ - spec/dummy/app/models/rubric_association.rb
859
+ - spec/dummy/app/models/section.rb
860
+ - spec/dummy/app/models/submission.rb
861
+ - spec/dummy/app/models/term.rb
862
+ - spec/dummy/app/models/user.rb
863
+ - spec/dummy/app/models/user_observer.rb
864
+ - spec/dummy/app/services/live_events/assignment_created_event.rb
865
+ - spec/dummy/app/services/live_events/assignment_event.rb
866
+ - spec/dummy/app/services/live_events/assignment_updated_event.rb
911
867
  - spec/dummy/app/services/live_events/base_event.rb
868
+ - spec/dummy/app/services/live_events/course_created_event.rb
869
+ - spec/dummy/app/services/live_events/course_event.rb
912
870
  - spec/dummy/app/services/live_events/course_section_created_event.rb
913
- - spec/dummy/app/services/live_events/user_updated_event.rb
871
+ - spec/dummy/app/services/live_events/course_section_event.rb
872
+ - spec/dummy/app/services/live_events/course_section_updated_event.rb
914
873
  - spec/dummy/app/services/live_events/course_updated_event.rb
915
- - spec/dummy/app/services/live_events/submission_created_event.rb
916
- - spec/dummy/app/services/live_events/syllabus_event.rb
917
- - spec/dummy/app/services/live_events/module_updated_event.rb
918
- - spec/dummy/app/services/live_events/course_event.rb
919
874
  - spec/dummy/app/services/live_events/enrollment_created_event.rb
920
- - spec/dummy/app/services/live_events/grade_event.rb
921
- - spec/dummy/app/services/live_events/course_section_updated_event.rb
922
- - spec/dummy/app/services/live_events/course_created_event.rb
923
875
  - spec/dummy/app/services/live_events/enrollment_event.rb
924
- - spec/dummy/app/services/live_events/assignment_updated_event.rb
925
- - spec/dummy/app/services/live_events/syllabus_updated_event.rb
876
+ - spec/dummy/app/services/live_events/enrollment_updated_event.rb
926
877
  - spec/dummy/app/services/live_events/grade_changed_event.rb
927
- - spec/dummy/app/services/live_events/module_item_updated_event.rb
878
+ - spec/dummy/app/services/live_events/grade_event.rb
879
+ - spec/dummy/app/services/live_events/module_created_event.rb
928
880
  - spec/dummy/app/services/live_events/module_event.rb
929
- - spec/dummy/app/services/live_events/course_section_event.rb
930
- - spec/dummy/app/services/live_events/assignment_created_event.rb
931
- - spec/dummy/app/services/live_events/enrollment_updated_event.rb
932
- - spec/dummy/app/services/live_events/assignment_event.rb
881
+ - spec/dummy/app/services/live_events/module_item_created_event.rb
933
882
  - spec/dummy/app/services/live_events/module_item_event.rb
883
+ - spec/dummy/app/services/live_events/module_item_updated_event.rb
884
+ - spec/dummy/app/services/live_events/module_updated_event.rb
885
+ - spec/dummy/app/services/live_events/submission_created_event.rb
886
+ - spec/dummy/app/services/live_events/submission_event.rb
934
887
  - spec/dummy/app/services/live_events/submission_updated_event.rb
888
+ - spec/dummy/app/services/live_events/syllabus_event.rb
889
+ - spec/dummy/app/services/live_events/syllabus_updated_event.rb
890
+ - spec/dummy/app/services/live_events/user_created_event.rb
935
891
  - spec/dummy/app/services/live_events/user_event.rb
936
- - spec/dummy/app/models/course_nickname.rb
937
- - spec/dummy/app/models/user.rb
938
- - spec/dummy/app/models/submission.rb
939
- - spec/dummy/app/models/group_membership.rb
940
- - spec/dummy/app/models/enrollment.rb
941
- - spec/dummy/app/models/rubric.rb
942
- - spec/dummy/app/models/rubric_association.rb
943
- - spec/dummy/app/models/role.rb
944
- - spec/dummy/app/models/account.rb
945
- - spec/dummy/app/models/application_record.rb
946
- - spec/dummy/app/models/admin.rb
947
- - spec/dummy/app/models/rubric_assessment.rb
948
- - spec/dummy/app/models/learning_outcome.rb
949
- - spec/dummy/app/models/grading_period.rb
950
- - spec/dummy/app/models/context_module.rb
951
- - spec/dummy/app/models/context_module_item.rb
952
- - spec/dummy/app/models/course.rb
953
- - spec/dummy/app/models/section.rb
954
- - spec/dummy/app/models/grading_period_group.rb
955
- - spec/dummy/app/models/user_observer.rb
956
- - spec/dummy/app/models/assignment_group.rb
957
- - spec/dummy/app/models/assignment.rb
958
- - spec/dummy/app/models/term.rb
959
- - spec/dummy/app/models/pseudonym.rb
960
- - spec/dummy/app/models/group.rb
961
- - spec/dummy/app/models/content_migration.rb
962
- - spec/dummy/config/secrets.yml
892
+ - spec/dummy/app/services/live_events/user_updated_event.rb
893
+ - spec/dummy/bin/rails
963
894
  - spec/dummy/config/application.rb
964
- - spec/dummy/config/initializers/session_store.rb
965
- - spec/dummy/config/initializers/wrap_parameters.rb
966
- - spec/dummy/config/initializers/assets.rb
895
+ - spec/dummy/config/boot.rb
896
+ - spec/dummy/config/database.yml
897
+ - spec/dummy/config/environment.rb
967
898
  - spec/dummy/config/environments/development.rb
968
899
  - spec/dummy/config/environments/test.rb
969
- - spec/dummy/config/database.yml
970
- - spec/dummy/config/boot.rb
900
+ - spec/dummy/config/initializers/assets.rb
901
+ - spec/dummy/config/initializers/session_store.rb
902
+ - spec/dummy/config/initializers/wrap_parameters.rb
971
903
  - spec/dummy/config/routes.rb
972
- - spec/dummy/config/environment.rb
973
- - spec/dummy/README.rdoc
904
+ - spec/dummy/config/secrets.yml
974
905
  - spec/dummy/config.ru
975
- - spec/dummy/bin/rails
906
+ - spec/dummy/db/migrate/20190702203621_create_courses.rb
907
+ - spec/dummy/db/migrate/20190702203622_create_accounts.rb
908
+ - spec/dummy/db/migrate/20190702203623_create_terms.rb
909
+ - spec/dummy/db/migrate/20190702203624_create_enrollments.rb
910
+ - spec/dummy/db/migrate/20190702203625_create_sections.rb
911
+ - spec/dummy/db/migrate/20190702203626_create_assignments.rb
912
+ - spec/dummy/db/migrate/20190702203627_create_submissions.rb
913
+ - spec/dummy/db/migrate/20190702203630_create_assignment_groups.rb
914
+ - spec/dummy/db/migrate/20190702203631_create_context_modules.rb
915
+ - spec/dummy/db/migrate/20190702203632_create_context_module_items.rb
916
+ - spec/dummy/db/migrate/20190927204545_create_roles.rb
917
+ - spec/dummy/db/migrate/20190927204546_create_admins.rb
918
+ - spec/dummy/db/migrate/20200415171620_create_groups.rb
919
+ - spec/dummy/db/migrate/20200416214248_create_group_memberships.rb
920
+ - spec/dummy/db/migrate/20201016181346_create_pseudonyms.rb
921
+ - spec/dummy/db/migrate/20210907233329_create_user_observers.rb
922
+ - spec/dummy/db/migrate/20210907233330_create_grading_periods.rb
923
+ - spec/dummy/db/migrate/20211001184920_create_grading_period_groups.rb
924
+ - spec/dummy/db/migrate/20220308072643_create_content_migrations.rb
925
+ - spec/dummy/db/migrate/20220712210559_create_learning_outcomes.rb
926
+ - spec/dummy/db/migrate/20220926221926_create_users.rb
927
+ - spec/dummy/db/migrate/20240408223326_create_course_nicknames.rb
928
+ - spec/dummy/db/migrate/20240509105100_create_rubrics.rb
929
+ - spec/dummy/db/migrate/20240510094100_create_rubric_associations.rb
930
+ - spec/dummy/db/migrate/20240510101100_create_rubric_assessments.rb
931
+ - spec/dummy/db/migrate/20240523101010_create_learning_outcome_results.rb
932
+ - spec/dummy/db/schema.rb
976
933
  - spec/factories/account_factory.rb
977
- - spec/factories/term_factory.rb
978
- - spec/factories/enrollment_factory.rb
934
+ - spec/factories/admin_factory.rb
979
935
  - spec/factories/assignment_factory.rb
980
936
  - spec/factories/assignment_group_factory.rb
981
- - spec/factories/role_factory.rb
982
- - spec/factories/admin_factory.rb
937
+ - spec/factories/context_module_factory.rb
938
+ - spec/factories/context_module_item_factory.rb
939
+ - spec/factories/course_factory.rb
940
+ - spec/factories/enrollment_factory.rb
983
941
  - spec/factories/group_factory.rb
984
942
  - spec/factories/group_membership_factory.rb
943
+ - spec/factories/role_factory.rb
985
944
  - spec/factories/section_factory.rb
986
- - spec/factories/context_module_item_factory.rb
987
- - spec/factories/course_factory.rb
988
945
  - spec/factories/submission_factory.rb
946
+ - spec/factories/term_factory.rb
989
947
  - spec/factories/user_factory.rb
990
- - spec/factories/context_module_factory.rb
948
+ - spec/job_batching/active_job_spec.rb
949
+ - spec/job_batching/batch_spec.rb
950
+ - spec/job_batching/callback_spec.rb
951
+ - spec/job_batching/context_hash_spec.rb
952
+ - spec/job_batching/flow_spec.rb
953
+ - spec/job_batching/integration/fail_then_succeed.rb
954
+ - spec/job_batching/integration/integration.rb
955
+ - spec/job_batching/integration/nested.rb
956
+ - spec/job_batching/integration/simple.rb
957
+ - spec/job_batching/integration/workflow.rb
958
+ - spec/job_batching/integration_helper.rb
959
+ - spec/job_batching/pool_spec.rb
960
+ - spec/job_batching/sidekiq_spec.rb
961
+ - spec/job_batching/status_spec.rb
962
+ - spec/job_batching/support/base_job.rb
963
+ - spec/job_batching/support/sample_callback.rb
964
+ - spec/spec_helper.rb
965
+ - spec/support/fake_canvas.rb
966
+ - spec/support/fixtures/canvas_responses/admins.json
967
+ - spec/support/fixtures/canvas_responses/module.json
968
+ - spec/support/fixtures/canvas_responses/module_item.json
969
+ - spec/support/fixtures/canvas_responses/roles.json
970
+ - spec/support/fixtures/canvas_responses/terms.json
971
+ - spec/support/fixtures/reports/assignment_groups.csv
972
+ - spec/support/fixtures/reports/assignments.csv
973
+ - spec/support/fixtures/reports/content_migrations.csv
974
+ - spec/support/fixtures/reports/context_module_items.csv
975
+ - spec/support/fixtures/reports/context_modules.csv
976
+ - spec/support/fixtures/reports/course_nicknames.csv
977
+ - spec/support/fixtures/reports/courses.csv
978
+ - spec/support/fixtures/reports/enrollments.csv
979
+ - spec/support/fixtures/reports/grading_period_groups.csv
980
+ - spec/support/fixtures/reports/grading_periods.csv
981
+ - spec/support/fixtures/reports/group_memberships.csv
982
+ - spec/support/fixtures/reports/groups.csv
983
+ - spec/support/fixtures/reports/learning_outcome_results.csv
984
+ - spec/support/fixtures/reports/learning_outcomes.csv
985
+ - spec/support/fixtures/reports/provisioning_csv
986
+ - spec/support/fixtures/reports/rubric_assessments.csv
987
+ - spec/support/fixtures/reports/rubric_associations.csv
988
+ - spec/support/fixtures/reports/rubrics.csv
989
+ - spec/support/fixtures/reports/sections.csv
990
+ - spec/support/fixtures/reports/submissions.csv
991
+ - spec/support/fixtures/reports/user_observers.csv
992
+ - spec/support/fixtures/reports/users.csv
993
+ - spec/support/fixtures/reports/xlist.csv
@@ -1,11 +0,0 @@
1
- module CanvasSync::Concerns
2
- module AutoRelations
3
- extend ActiveSupport::Concern
4
-
5
- # CanvasSync::Record.define_feature self, default: true
6
-
7
- included do
8
-
9
- end
10
- end
11
- end
@@ -1,3 +0,0 @@
1
- canvas_course_id,course_id,integration_id,short_name,long_name,canvas_account_id,account_id,canvas_term_id,term_id,status,start_date,end_date,course_format,created_by_sis
2
- 1,course_sis_id_1,,C1,Course #1,1,,1,term_sis_id_1,active,2017-03-27T15:53:18-06:00,2017-04-27T06:21:18-06:00,,FALSE
3
- 2,course_sis_id_2,,C2,Course #2,1,,1,term_sis_id_2,unpublished,2017-03-27T15:53:18-06:00,2017-04-27T06:21:18-06:00,,FALSE
@@ -1,4 +0,0 @@
1
- canvas_user_id,user_id,integration_id,authentication_provider_id,login_id,first_name,last_name,full_name,sortable_name,short_name,email,status,created_by_sis
2
- 1,sis_id_1,,123,spiderdude1337,Patches,the Spider,Patches the Spider,"the Spider, Patches",,poorbastard@yharnam.com,active,FALSE
3
- 2,sis_id_2,,1234,retireddude109,Hunter,Djura,Hunter Djura,"Djura, Hunter",,dreamer@yharnam.com,active,FALSE
4
- 2,sis_id_2,,1234,retireddude110,Hunter,Djura,Hunter Djura,"Djura, Hunter",,dreamer@yharnam.com,active,FALSE