require "spec_helper" RSpec.describe CanvasSync::Jobs::SyncAssignmentsJob do describe "#perform" do context "a term id is in the global_options" do it "enqueues a ReportStarter for the proserv_assignment_export_csv for the given term" do expect_any_instance_of(Bearcat::Client).to receive(:start_report) .with("self", "proserv_assignment_export_csv", { parameters: { enrollment_term_id: 1 } }) .and_return("id" => 1) expect(CanvasSync::Jobs::ReportChecker).to receive(:set).and_call_original CanvasSync::Jobs::SyncAssignmentsJob.perform_now({ jobs: [], global_options: { canvas_term_id: 1 } }, {}) end end context "no term id is specified" do it "enqueues a ReportStarter for the proserv_assignment_export_csv for all terms" do expect_any_instance_of(Bearcat::Client).to receive(:start_report) .with("self", "proserv_assignment_export_csv", { parameters: {} }) .and_return("id" => 1) expect(CanvasSync::Jobs::ReportChecker).to receive(:set).and_call_original CanvasSync::Jobs::SyncAssignmentsJob.perform_now({ jobs: [], global_options: {} }, {}) end end end end