def gradeAssig(self, assigID, studentID, grade):

        for i in self.__repoGrade:
            if assigID == Grade.get_assignmentID(
                    i) and studentID == Grade.get_studentID(i):
                if Grade.get_grade(i) == 0:
                    self.addGrade(assigID, studentID, grade)
                    break
                else:
                    raise GradingError("Assignment already graded!\n")
            else:
                raise GradingError("The given IDs do not match!\n")
    def giveAssigGroup(self, assigID, group):
        gradeList = self.getAllGrades()
        self.__validatorGrade.vallidateID(assigID, gradeList)

        for student in self.__repoStudents:
            if group == Student.get_group(student):
                studentID = Student.get_id(student)
                grade = Grade(assigID, studentID, 0)
                self.__repoGrade.add(grade)
Ejemplo n.º 3
0
 def __testStudentRemvoal(self):
     self.__gradeRepo.clear()
     self.__repository.clear()
     grade1 = Grade(6, 7, 0)
     grade2 = Grade(5, 7, 0)
     grade3 = Grade(4, 7, 9)
     grade4 = Grade(2, 7, 9)
     student = Student(7, 'Ion', 100)
     self.__gradeRepo.add(grade1)
     self.__gradeRepo.add(grade2)
     self.__gradeRepo.add(grade3)
     self.__gradeRepo.add(grade4)
     self.__repository.add(student)
     #print(*self.__repository)
     #print(*self.__gradeRepo)
     self.__controller.removeStudent(7)
     self.__gradeController.removeStudent(7)
     #print(*self.__repository)
     #print(*self.__gradeRepo)
     assert self.__gradeRepo == []
     assert self.__repository == []
Ejemplo n.º 4
0
    def __testGiveAssigGroup(self):
        assigID = 8
        group = 917
        #print(*self.__controller.getAllStudents())
        grade = Grade(7, 8, 0)
        grade2 = Grade(8, 2, 0)
        grade3 = Grade(8, 3, 0)
        self.__controller.addStudent(2, 'Gigel', 917)
        self.__controller.addStudent(3, 'Marian', 917)
        self.__controller.addStudent(4, 'Bogdan', 910)
        self.__controller.addStudent(5, 'Ion', 912)

        self.__gradeController.giveAssigGroup(assigID, group)
        gradeList = self.__gradeController.getAllGrades()
        #print(grade,grade2,grade3)
        #print(*gradeList, sep = " ")
        assert self.__gradeController.getAllGrades() == [grade, grade2, grade3]
        try:
            self.__gradeController.giveAssigGroup(assigID, 910)
            assert False
        except ValidError as v:
            assert str(v) == "Assignment already given!"
    def giveAssigStudent(self, assigID, studentID):
        '''
        Function that gives an assignment to a student, if it has not already been given
        in:assigID, studentID-int
        out:repoGrade - list, with the newly added Assignemnt 
        '''
        grade = Grade(assigID, studentID, 0)
        self.__validatorGrade.validateIDs(grade)

        gradeList = self.getAllGrades()
        self.__validatorGrade.vallidateID(assigID, gradeList)

        self.__repoGrade.add(grade)
Ejemplo n.º 6
0
    def __testGiveAssigStudent(self):
        grade = Grade(7, 8, 0)
        assert self.__gradeController.getAllGrades() == []
        self.__gradeController.giveAssigStudent(7, 8)
        gradeList = self.__gradeController.getAllGrades()
        gradeList.append(grade)

        #print(*gradeList, sep = ", ")
        #print(grade)
        #assert gradeList == [grade]

        try:
            self.__gradeController.giveAssigStudent(7, 9)
            assert False
        except ValidError as v:
            assert str(v) == "Assignment already given!"
Ejemplo n.º 7
0
    def __testGradeAssig(self):
        goodAssigID = 8
        goodStudentID = 2
        goodGrade = 9
        badGrade1 = -9
        badGrade2 = 0
        self.__gradeRepo.clear()
        grade = Grade(goodAssigID, goodStudentID, 0)
        self.__gradeRepo.add(grade)

        try:
            self.__gradeController.gradeAssig(goodAssigID, goodStudentID,
                                              badGrade1)
            assert False
        except ValidError as g:
            assert str(g) == "Grade is invalid!\n"

        self.__gradeController.gradeAssig(goodAssigID, goodStudentID,
                                          goodGrade)
        try:
            self.__gradeController.gradeAssig(goodAssigID, goodStudentID, 8)
            assert False
        except GradingError as g:
            assert str(g) == "Assignment already graded!\n"
 def addGrade(self, assigID, studentID, grade):
     gradeOBJ = Grade(assigID, studentID, grade)
     self.__validatorGrade.validateIDs(gradeOBJ)
     self.__validatorGrade.validateGrade(gradeOBJ)
     self.__repoGrade.update(gradeOBJ)
 def removeAssig(self, ident):
     for i in self.__repoGrade[:]:
         if ident == Grade.get_assignmentID(i):
             self.__repoGrade.remove(i)
 def removeStudent(self, ident):
     for i in self.__repoGrade[:]:
         if ident == Grade.get_studentID(i):
             self.__repoGrade.remove(i)
    def showUngraded(self, studentID):

        for i in self.__repoGrade:
            if studentID == Grade.get_studentID(i):
                if Grade.get_grade(i) == 0:
                    print(str(i))