Sha256: 9655e9fffdea7057bd7ad0d895bf90513cf865b7f1ba9be8163a155e03d6fa98

Contents?: true

Size: 837 Bytes

Versions: 5

Compression:

Stored size: 837 Bytes

Contents

require "spec_helper"

RSpec.describe CanvasSync::Processors::ContextModulesProcessor do
  let(:subject) { CanvasSync::Processors::ContextModulesProcessor }

  describe "#process" do
    it "inserts context modules" do
      expect {
        subject.process("spec/support/fixtures/reports/context_modules.csv", {}, 1)
      }.to change { ContextModule.count }.by(2)
      expect(ContextModule.first).to have_attributes(
        canvas_id: 23,
        canvas_context_id: 785,
        canvas_context_type: 'Course',
        name: 'New Mod',
        position: 1,
        workflow_state: 'active',
        completion_requirements: [],
        prerequisites: []
      )
      # Check for properly serialized YAML
      expect(ContextModule.last.completion_requirements).to eq([
        { id: 1, type: 'must_view' }
      ])
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
canvas_sync-0.22.9 spec/canvas_sync/processors/context_modules_processor_spec.rb
canvas_sync-0.22.8 spec/canvas_sync/processors/context_modules_processor_spec.rb
canvas_sync-0.22.6 spec/canvas_sync/processors/context_modules_processor_spec.rb
canvas_sync-0.22.5 spec/canvas_sync/processors/context_modules_processor_spec.rb
canvas_sync-0.22.4 spec/canvas_sync/processors/context_modules_processor_spec.rb