コード例 #1
0
    def test_in_evaluation_to_reviewed(self):
        # Course is "fully reviewed" as no open text_answers are present by default,
        course = mommy.make(Course, state='in_evaluation', vote_end_date=date.today() - timedelta(days=1))

        Course.update_courses()

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'reviewed')
コード例 #2
0
ファイル: test_models.py プロジェクト: Steditor/EvaP
    def test_in_evaluation_to_reviewed(self):
        # Course is "fully reviewed" as no open text_answers are present by default,
        course = mommy.make(Course, state='in_evaluation', vote_end_date=date.today() - timedelta(days=1))

        Course.update_courses()

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'reviewed')
コード例 #3
0
ファイル: test_models.py プロジェクト: Steditor/EvaP
    def test_in_evaluation_to_evaluated(self):
        course = mommy.make(Course, state='in_evaluation', vote_end_date=date.today() - timedelta(days=1))

        with patch('evap.evaluation.models.Course.is_fully_reviewed') as mock:
            mock.__get__ = Mock(return_value=False)
            Course.update_courses()

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'evaluated')
コード例 #4
0
    def test_in_evaluation_to_evaluated(self):
        course = mommy.make(Course, state='in_evaluation', vote_end_date=date.today() - timedelta(days=1))

        with patch('evap.evaluation.models.Course.is_fully_reviewed') as mock:
            mock.__get__ = Mock(return_value=False)
            Course.update_courses()

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'evaluated')
コード例 #5
0
ファイル: test_models.py プロジェクト: Steditor/EvaP
    def test_approved_to_in_evaluation(self):
        course = mommy.make(Course, state='approved', vote_start_date=date.today())

        with patch('evap.evaluation.models.EmailTemplate.send_evaluation_started_notifications') as mock:
            Course.update_courses()

        mock.assert_called_once_with([course])

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'in_evaluation')
コード例 #6
0
ファイル: test_models.py プロジェクト: leowe/EvaP
    def test_evaluation_ends_soon(self):
        course = mommy.make(Course,
                            state='in_evaluation',
                            vote_start_datetime=datetime.now() -
                            timedelta(days=2),
                            vote_end_date=date.today() - timedelta(hours=24),
                            is_graded=False)

        Course.update_courses()
        self.assertTrue(course.evaluation_ends_soon())
コード例 #7
0
    def test_approved_to_in_evaluation(self):
        course = mommy.make(Course, state='approved', vote_start_date=date.today())

        with patch('evap.evaluation.models.EmailTemplate.send_evaluation_started_notifications') as mock:
            Course.update_courses()

        mock.assert_called_once_with([course], None)

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'in_evaluation')
コード例 #8
0
ファイル: test_models.py プロジェクト: Onderi/EvaP
    def test_approved_to_in_evaluation_sends_emails(self):
        """ Regression test for #945 """
        participant = mommy.make(UserProfile, email='*****@*****.**')
        course = mommy.make(Course, state='approved', vote_start_datetime=datetime.now(), participants=[participant])

        Course.update_courses()

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(len(mail.outbox), 1)
        self.assertEqual(course.state, 'in_evaluation')
コード例 #9
0
ファイル: test_models.py プロジェクト: Steditor/EvaP
    def test_in_evaluation_to_published(self):
        # Course is "fully reviewed" and not graded, thus gets published immediately.
        course = mommy.make(Course, state='in_evaluation', vote_end_date=date.today() - timedelta(days=1),
                            is_graded=False)

        with patch('evap.evaluation.tools.send_publish_notifications') as mock:
            Course.update_courses()

        mock.assert_called_once_with([course])

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'published')
コード例 #10
0
    def test_in_evaluation_to_published(self):
        # Course is "fully reviewed" and not graded, thus gets published immediately.
        course = mommy.make(Course, state='in_evaluation', vote_end_date=date.today() - timedelta(days=1),
                            is_graded=False)

        with patch('evap.evaluation.tools.send_publish_notifications') as mock:
            Course.update_courses()

        mock.assert_called_once_with([course])

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'published')
コード例 #11
0
ファイル: test_models.py プロジェクト: Onderi/EvaP
    def test_evaluation_ended(self):
        # Course is out of evaluation period.
        mommy.make(Course, state='in_evaluation', vote_start_datetime=datetime.now() - timedelta(days=2),
                   vote_end_date=date.today() - timedelta(days=1), is_graded=False)
        # This course is not.
        mommy.make(Course, state='in_evaluation', vote_start_datetime=datetime.now() - timedelta(days=2),
                   vote_end_date=date.today(), is_graded=False)

        with patch('evap.evaluation.models.Course.evaluation_end') as mock:
            Course.update_courses()

        self.assertEqual(mock.call_count, 1)
コード例 #12
0
ファイル: test_models.py プロジェクト: Onderi/EvaP
    def test_approved_to_in_evaluation(self):
        course = mommy.make(Course, state='approved', vote_start_datetime=datetime.now())

        with patch('evap.evaluation.models.EmailTemplate.send_to_users_in_courses') as mock:
            Course.update_courses()

        template = EmailTemplate.objects.get(name=EmailTemplate.EVALUATION_STARTED)
        mock.assert_called_once_with(template, [course], [EmailTemplate.ALL_PARTICIPANTS],
                                     use_cc=False, request=None)

        course = Course.objects.get(pk=course.pk)
        self.assertEqual(course.state, 'in_evaluation')
コード例 #13
0
ファイル: run_tasks.py プロジェクト: kateyy/EvaP
 def update_courses(self):
     """ Updates courses state, when evaluation time begins/ends."""
     Course.update_courses()
コード例 #14
0
 def handle(self, *args, **options):
     Course.update_courses()
コード例 #15
0
ファイル: run_tasks.py プロジェクト: schumannd/EvaP
 def update_courses(self):
     """ Updates courses state, when evaluation time begins/ends."""
     Course.update_courses()