コード例 #1
0
 def _create_assignment(self, period, short_name, long_name, first_deadline,
                        publishing_time, delivery_types, anonymous):
     assignment = Assignment(parentnode=period, short_name=short_name,
                             long_name=long_name,
                             first_deadline=first_deadline,
                             publishing_time=publishing_time,
                             delivery_types=delivery_types,
                             anonymous=anonymous)
     assignment.full_clean()
     assignment.save()
     return assignment
コード例 #2
0
ファイル: assignment.py プロジェクト: unioslo/devilry-django
    def test_old_where_is_examiner(self):
        past = datetime.now() - timedelta(10)
        examiner3 = User.objects.get(username='******')
        q = Assignment.old_where_is_examiner(examiner3)
        self.assertEquals(q.count(), 1)
        self.assertEquals(q[0].short_name, 'oldassignment')

        # Set as examiner on group1
        self.add_to_path('uio.ifi;inf1100.looong.assignment1.group1:examiner(examiner3)')
        q = Assignment.old_where_is_examiner(examiner3)
        self.assertEquals(q.count(), 1)
        # Making the period old and verify that the count has changed
        self.inf1100_looong.end_time = past
        self.inf1100_looong.save()
        self.assertEquals(q.count(), 2)
コード例 #3
0
ファイル: assignment.py プロジェクト: unioslo/devilry-django
 def test_where_is_examiner(self):
     examiner3 = User.objects.get(username='******')
     q = Assignment.where_is_examiner(examiner3)
     self.assertEquals(q.count(), 1)
     self.assertEquals(q[0].short_name, 'oldassignment')
     self.inf1100_looong_assignment3_group1.examiners.create(user=examiner3)
     self.assertEquals(q.count(), 2)
コード例 #4
0
ファイル: assignment.py プロジェクト: unioslo/devilry-django
    def test_published_where_is_examiner(self):
        User.objects.get(username='******')
        q = Assignment.published_where_is_examiner(self.examiner3, old=False, active=False)
        self.assertEquals(q.count(), 0)
        
        q = Assignment.published_where_is_examiner(self.examiner3)
        self.assertEquals(q.count(), 1)
        self.assertEquals(q[0].short_name, 'oldassignment')

        # Add as examiner, count should increase
        self.inf1100_looong_assignment1_g1.examiners.create(user=self.examiner3)
        self.assertEquals(q.count(), 2)
        # Set publishing_time to future. count should decrease
        self.inf1100_looong_assignment1.publishing_time = datetime.now() + timedelta(10)
        self.inf1100_looong_assignment1.save()
        q = Assignment.published_where_is_examiner(self.examiner3)
        self.assertEquals(q.count(), 1)
コード例 #5
0
ファイル: assignment.py プロジェクト: unioslo/devilry-django
 def test_active_where_is_examiner(self):
     past = datetime.now() - timedelta(10)
     examiner1 = User.objects.get(username='******')
     # Get assignments where the period is active
     q = Assignment.active_where_is_examiner(examiner1).order_by('short_name')
     self.assertEquals(q.count(), 3)
     self.assertEquals(q[0].short_name, 'assignment1')
     self.assertEquals(q[1].short_name, 'assignment2')
     self.assertEquals(q[2].short_name, 'assignment3')
     
     #Create group2 with examiner1 as examiner
     self.add_to_path('uio.ifi;inf1010.spring10:begins(-1):ends(2).assignment0.group2:examiner(examiner1)')
     q = Assignment.active_where_is_examiner(examiner1)
     self.assertEquals(q.count(), 4)
     self.inf1010_spring10.end_time = past
     self.inf1010_spring10.save()
     self.assertEquals(q.count(), 3)
     self.inf1010_spring10_assignment0.publishing_time = past
     self.inf1010_spring10_assignment0.save()
     q = Assignment.active_where_is_examiner(examiner1)
     self.assertEquals(q.count(), 3)
コード例 #6
0
ファイル: examiner.py プロジェクト: Amadiro/devilry-django
 def read_authorize(cls, user, obj):
     if not Assignment.published_where_is_examiner(user).filter(id=obj.assignment_id):
         raise PermissionDenied()
コード例 #7
0
ファイル: assignment.py プロジェクト: unioslo/devilry-django
 def test_where_is_admin(self):
     ifiadmin = User.objects.get(username='******')
     self.assertEquals(Assignment.where_is_admin(ifiadmin).count(), 6)
コード例 #8
0
ファイル: examiner.py プロジェクト: ctryti/devilry-django
 def read_authorize(cls, user, obj):
     try:
         Assignment.objects.get(Assignment.q_is_examiner(user) & Q(id=obj.id))
     except Assignment.DoesNotExist:
         raise PermissionDenied()
コード例 #9
0
 def read_authorize(cls, user, obj):
     if not Assignment.published_where_is_examiner(user).filter(
             id=obj.assignment_id):
         raise PermissionDenied()
コード例 #10
0
 def get_queryset(self):
     return Assignment.where_is_admin_or_superadmin(self.request.user)