def test_update_status_fail_raise(self, m_save):
     """ If raise_exception is True, an exception in the save() call should bubble up """
     result = None
     job = BulkJob()
     m_save.side_effect = Exception
     with self.assertRaises(Exception):
         result = job.update_status(BulkJob.STATUS_SETUP, raise_exception=True)
     self.assertTrue(m_save.called)
     self.assertIsNone(result)
 def test_update_status_fail_gracefully(self, m_save):
     """
     If raise_exception is not provided, or is False, an exception in the save() call should not bubble up,
      and the function should return False (indicating failure)
     """
     job = BulkJob()
     m_save.side_effect = Exception
     result = job.update_status(BulkJob.STATUS_SETUP)
     self.assertTrue(m_save.called)
     self.assertFalse(result)
 def test_update_status_fail_gracefully(self, m_save):
     """
     If raise_exception is not provided, or is False, an exception in the save() call should not bubble up,
      and the function should return False (indicating failure)
     """
     job = BulkJob()
     m_save.side_effect = Exception
     result = job.update_status(BulkJob.STATUS_SETUP)
     self.assertTrue(m_save.called)
     self.assertFalse(result)
 def test_update_status_fail_raise(self, m_save):
     """ If raise_exception is True, an exception in the save() call should bubble up """
     result = None
     job = BulkJob()
     m_save.side_effect = Exception
     with self.assertRaises(Exception):
         result = job.update_status(BulkJob.STATUS_SETUP,
                                    raise_exception=True)
     self.assertTrue(m_save.called)
     self.assertIsNone(result)
Example #5
0
    def test_that_create_course_is_call_with_all_bulk_job_courses(
            self, mock_getjobs, mock_filter_bulk_jobs, get_course_data,
            create_canvas_course, start_course_template_copy):
        """
        test that create_canvas_course is called with all the courses that have a status of 'setup'
        """
        mock_getjobs.return_value = self.cm_jobs
        mock_filter_bulk_jobs.return_value = self.bulk_jobs
        create_course_calls = []
        template_copy_calls = []
        for index, course in enumerate(self.courses):
            create_course_calls.append(
                call(
                    course,
                    self.user_id,
                    bulk_job=BulkCanvasCourseCreationJob(id=self.bulk_job_id)))
            create_course_calls.append(ANY)
            template_copy_calls.append(
                call(ANY,
                     ANY,
                     self.user_id,
                     course_job_id=index,
                     bulk_job_id=self.bulk_job_id,
                     template_id=self.template_id))

        _init_courses_with_status_setup()
        create_canvas_course.assert_has_calls(create_course_calls)
        start_course_template_copy.assert_has_calls(template_copy_calls)
 def setUp(self):
     self.bulk_job_id = 10
     self.bulk_job = BulkCanvasCourseCreationJob(id=self.bulk_job_id)
     self.canvas_course_id = uuid.uuid4().hex
     self.job_id = 1475
     self.sis_course_id = "305841"
     self.sis_user_id = "123456"
     self.school_id = "colgsas"
    def test_create_new_course_called_with_bulk_template_params(
            self, SDK_CONTEXT, logger, course_generation_job__objects__filter,
            course_generation_job__objects__create,
            update_course_generation_workflow_state, get_template_course,
            get_course_data, create_course_section, create_new_course,
            get_default_template_for_school):
        """
        Test to assert that create_new_course method is called by
        create_canvas_course controller method with appropriate arguments
        (collapses a bunch of individual parameter tests)
        """
        job = Mock(spec=CanvasCourseGenerationJob())
        course_generation_job__objects__create.return_value = job
        query_set = Mock(get=Mock(return_value=job))
        course_generation_job__objects__filter.return_value = query_set
        course_model_mock = self.get_mock_of_get_course_data()
        get_template_course.return_value = Bunch(
            json=lambda: {
                'is_public': True,
                'public_syllabus': True,
                'is_public_to_auth_users': True
            })
        get_course_data.return_value = course_model_mock
        sis_account_id_argument = 'sis_account_id:' + course_model_mock.sis_account_id
        course_code_argument = course_model_mock.course_code
        course_name_argument = course_model_mock.course_name
        course_term_id_argument = 'sis_term_id:' + course_model_mock.sis_term_id
        course_sis_course_id_argument = self.sis_course_id
        bulk_job = BulkCanvasCourseCreationJob(id=self.bulk_job_id,
                                               template_canvas_course_id=12345)

        controller.create_canvas_course(self.sis_course_id, self.sis_user_id,
                                        bulk_job)
        assert not get_default_template_for_school.called
        create_new_course.assert_called_with(
            request_ctx=SDK_CONTEXT,
            account_id=sis_account_id_argument,
            course_name=course_name_argument,
            course_course_code=course_code_argument,
            course_term_id=course_term_id_argument,
            course_sis_course_id=course_sis_course_id_argument,
            course_is_public_to_auth_users=True,
            course_is_public=True,
            course_public_syllabus=True)
Example #8
0
 def setUp(self):
     self.user_id = '12345678'
     self.bulk_job_id = 12345
     self.template_id = 54321
     self.school_code = 'colgsas'
     self.sis_term_id = 4579
     self.courses = [123, 456, 789, 1011, 1012, 1013, 1014, 1015]
     self.cm_jobs = []
     for idx, course in enumerate(self.courses):
         migration_job = ContentMigrationJob(
             idx, self.bulk_job_id, self.user_id, course,
             CanvasCourseGenerationJob.STATUS_SETUP)
         self.cm_jobs.append(migration_job)
     self.bulk_jobs = [
         BulkCanvasCourseCreationJob(
             id=self.bulk_job_id,
             school_id=self.school_code,
             template_canvas_course_id=self.template_id,
             status=BulkCanvasCourseCreationJob.STATUS_SETUP,
             created_by_user_id=self.user_id)
     ]
 def test_update_status_success(self, m_save):
     """ If no exception is raised in the save() call then the function should return True (indicating success) """
     job = BulkJob()
     result = job.update_status(BulkJob.STATUS_SETUP)
     self.assertTrue(m_save.called)
     self.assertTrue(result)
 def test_update_status_success(self, m_save):
     """ If no exception is raised in the save() call then the function should return True (indicating success) """
     job = BulkJob()
     result = job.update_status(BulkJob.STATUS_SETUP)
     self.assertTrue(m_save.called)
     self.assertTrue(result)