コード例 #1
0
 def writing(self):
     file = open("/Users/ecaterinacarazan/PycharmProjects/files/student.txt", "w")
     list = Repository.get_all(self)
     for stud in list:
         string = str(stud.get_id()) + ", " + str(stud.get_name()) + ", " + str(stud.get_group())
         file.write(string + "\n")
     file.close()
コード例 #2
0
 def writing(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/student.txt", "w")
     list = Repository.get_all(self)
     for stud in list:
         string = str(stud.get_id()) + ", " + str(stud.get_name()) + ", " + str(stud.get_group())
         file.write(string + "\n")
     file.close()
コード例 #3
0
 def writing(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/assignment.txt", "w")
     list = Repository.get_all(self)
     for assign in list:
         string = str(assign.get_id()) + ", " + str(assign.get_deadline()) + ", " + str(assign.get_description())
         file.write(string + "\n")
     file.close()
コード例 #4
0
 def writing(self):
     file = open("/Users/ecaterinacarazan/PycharmProjects/files/assignment.txt", "w")
     list = Repository.get_all(self)
     for assign in list:
         string = str(assign.get_id()) + ", " + str(assign.get_deadline()) + ", " + str(assign.get_description())
         file.write(string + "\n")
     file.close()
コード例 #5
0
 def writing(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/student.txt", "w")
     list = Repository.get_all(self)
     for stud in list:
         string = str(stud.get_id()) + ", " + str(
             stud.get_name()) + ", " + str(stud.get_group())
         file.write(string + "\n")
     file.close()
コード例 #6
0
ファイル: RepoWritingFileGrade.py プロジェクト: andidh/Python
 def writing(self):
     file = open("/Users/ecaterinacarazan/PycharmProjects/files/grade.txt", "w")
     list = Repository.get_all(self)
     for grade in list:
         stud_id = grade.get_student().get_id()
         assign_id = grade.get_assignment().get_id()
         string = str(grade.get_id()) + ", " + str(stud_id) + ", " + str(assign_id) + ", " + str(grade.get_grade())
         file.write(string + "\n")
     file.close()
コード例 #7
0
 def writing(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/grade.txt", "w")
     list = Repository.get_all(self)
     for grade in list:
         stud_id = grade.get_student().get_id()
         assign_id = grade.get_assignment().get_id()
         string = str(grade.get_id()) + ", " + str(stud_id) + ", " + str(
             assign_id) + ", " + str(grade.get_grade())
         file.write(string + "\n")
     file.close()
コード例 #8
0
 def writing(self):
     file = open(
         "/Users/ecaterinacarazan/PycharmProjects/files/assignment.txt",
         "w")
     list = Repository.get_all(self)
     for assign in list:
         string = str(assign.get_id()) + ", " + str(
             assign.get_deadline()) + ", " + str(assign.get_description())
         file.write(string + "\n")
     file.close()
コード例 #9
0
 def reading(self):
     file = open("/Users/ecaterinacarazan/PycharmProjects/files/student.txt", "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         stud = Student(int(list[0]), list[1], int(list[2]))
         for s in Repository.get_all(self):
             if s.get_id() == int(list[0]):
                 raise ControllerException("Can not add student with same id")
         Repository.add_item(self, stud)
     file.close()
コード例 #10
0
ファイル: RepoWritingFileGrade.py プロジェクト: andidh/Python
 def writing(self):
     file = open("/Users/ecaterinacarazan/PycharmProjects/files/grade.txt",
                 "w")
     list = Repository.get_all(self)
     for grade in list:
         stud_id = grade.get_student().get_id()
         assign_id = grade.get_assignment().get_id()
         string = str(grade.get_id()) + ", " + str(stud_id) + ", " + str(
             assign_id) + ", " + str(grade.get_grade())
         file.write(string + "\n")
     file.close()
コード例 #11
0
 def reading(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/student.txt", "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         stud = Student(int(list[0]), list[1], int(list[2]))
         for s in Repository.get_all(self):
             if s.get_id() == int(list[0]):
                 raise ControllerException("Can not add student with same id")
         Repository.add_item(self, stud)
     file.close()
コード例 #12
0
 def reading(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/assignment.txt", "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         assign = Assignment(int(list[0]), list[1], list[2])
         for asgn in Repository.get_all(self):
             if asgn.get_id() == int(list[0]):
                 raise ControllerException("Can not add assignment with same id")
         Repository.add_item(self, assign)
     file.close()
コード例 #13
0
 def reading(self):
     file = open("/Users/ecaterinacarazan/PycharmProjects/files/assignment.txt", "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         assign = Assignment(int(list[0]), list[1], list[2])
         for asgn in Repository.get_all(self):
             if asgn.get_id() == int(list[0]):
                 raise ControllerException("Can not add assignment with same id")
         Repository.add_item(self, assign)
     file.close()
コード例 #14
0
class TestRepository(unittest.TestCase):
    def setUp(self):
        # setUp method will be executed before every test
        TestCase.setUp(self)
        self.repository = Repository()
        # add mock students to repo
        stud1 = Student(1, "A", 1)
        stud2 = Student(2, "B", 2)
        stud3 = Student(3, "C", 3)
        self.repository.add_item(stud1)
        self.repository.add_item(stud2)
        self.repository.add_item(stud3)

    def test_add(self):
        self.repository.add_item(Student(4, "D", 4))
        self.assertEqual(len(self.repository.get_all()), 4)

    def test_remove(self):
        self.repository.remove_item(1)
        self.assertEqual(len(self.repository.get_all()), 2)
        # check for exception call
        try:
            self.repository.remove_item(4)
        except CustomException as e:
            self.assertEqual(e.get_msg(), "No such item")

    def test_update_student(self):
        self.repository.update_item(Student(1, "D", 2))
        updated_student = self.repository.get_by_id(1)
        self.assertEqual(updated_student.get_name(), "D")
        # check exception case
        try:
            self.repository.update_item(Student(4, "D", 4))
        except CustomException as e:
            self.assertEqual(e.get_msg(), "No item for update found")

    def test_get_by_id(self):
        stud1 = self.repository.get_by_id(1)
        self.assertEqual(stud1.get_name(), "A")
        stud2 = self.repository.get_by_id(4)
        self.assertIsNone(stud2)
コード例 #15
0
 def reading(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/student.txt", "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         stud = Student(int(list[0]), list[1], int(list[2]))
         for s in Repository.get_all(self):
             if s.get_id() == int(list[0]):
                 raise ControllerException(
                     "Can not add student with same id")
         Repository.add_item(self, stud)
     file.close()
コード例 #16
0
ファイル: RepoWritingFileGrade.py プロジェクト: andidh/Python
 def reading(self):
     file = open("/Users/ecaterinacarazan/PycharmProjects/files/grade.txt", "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         student = self.repo_stud.get_by_id(int(list[1]))
         assign = self.repo_assign.get_by_id(int(list[2]))
         grade = Grade(int(list[0]), student, assign, int(list[3]))
         for g in Repository.get_all(self):
             if grade.get_id() == g.get_id():
                 raise ControllerException("Can not add grade with same id")
             Repository.add_item(self, grade)
     file.close()
コード例 #17
0
 def reading(self):
     file = open("/Users/AndiD//Documents/Eclipse/lab57/grade.txt", "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         student = self.repo_stud.get_by_id(int(list[1]))
         assign = self.repo_assign.get_by_id(int(list[2]))
         grade = Grade(int(list[0]), student, assign, int(list[3]))
         for g in Repository.get_all(self):
             if grade.get_id() == g.get_id():
                 raise ControllerException("Can not add grade with same id")
             Repository.add_item(self, grade)
     file.close()
コード例 #18
0
 def reading(self):
     file = open(
         "/Users/ecaterinacarazan/PycharmProjects/files/assignment.txt",
         "r")
     lines = file.read().splitlines()
     for line in lines:
         list = line.split(", ")
         assign = Assignment(int(list[0]), list[1], list[2])
         for asgn in Repository.get_all(self):
             if asgn.get_id() == int(list[0]):
                 raise ControllerException(
                     "Can not add assignment with same id")
         Repository.add_item(self, assign)
     file.close()
コード例 #19
0
class Test(unittest.TestCase):
    def setUp(self):
        self.undoController = UndoController()

        self.studentRepo = Repository()
        self.studentValidator = StudentValidator()
        self.studentController = StudentController(self.studentValidator,
                                                   self.studentRepo,
                                                   self.undoController)

        self.disciplineRepo = Repository()
        self.disciplineValidator = DisciplineValidator()
        self.disciplineController = DisciplineController(
            self.disciplineValidator, self.disciplineRepo, self.undoController)

        self.gradeRepo = Repository()
        self.gradeValidator = GradeValidator()
        self.gradeController = GradeController(self.gradeValidator,
                                               self.gradeRepo,
                                               self.disciplineRepo,
                                               self.studentRepo,
                                               self.undoController)

    def test_student(self):
        stud = Student(1, "Ancau")
        self.assertTrue(stud.id == 1 and stud.name == "Ancau")

        self.assertTrue(len(self.studentRepo) == 0)

        anca = self.studentController.create(1, "Ancau Adrian")
        popa = self.studentController.create(2, "Popa Cristian")

        self.assertRaises(StudentException, self.studentController.create, 2,
                          "Niganinga")

        self.assertTrue(self.studentController.find(1) == anca)
        self.assertTrue(self.studentRepo.find(2) == popa)

        self.assertEqual(len(self.studentRepo), 2)
        cascade_remove(self.studentController, self.gradeController,
                       self.undoController, 2)

        self.assertTrue(len(self.studentRepo), 1)
        self.undoController.undo()

        self.assertTrue(len(self.studentRepo), 2)
        self.undoController.redo()
        self.assertTrue(len(self.studentRepo), 1)

    def test_discipline(self):
        math = self.disciplineController.create(1, "Math")
        engl = self.disciplineController.create(2, "English")

        self.assertEqual(len(self.disciplineRepo), 2)
        self.assertEqual(self.disciplineRepo.find(1), math)

        self.assertEqual(self.disciplineController.find(2), engl)
        self.disciplineController.update(2, 'History')
        self.assertEqual(self.disciplineController.find(2),
                         Discipline(2, 'History'))

    def test_grade(self):
        first = self.gradeController.create(1, 1, 10)
        second = self.gradeController.create(2, 1, 7)
        self.assertRaises(GradeException, self.gradeController.create, 1, 1,
                          12)

        self.gradeController.remove_single_grade(1, 1, 10)
        self.assertNotIn(first, self.gradeController.all_students(1))

    def undo_test(self):
        self.disciplineController.create(3, "Undo test")
        self.undoController.undo()
        self.assertNotIn(Discipline(3, "Undo test"),
                         self.disciplineRepo.get_all())

        self.undoController.redo()
        self.assertIn(Discipline(3, "Undo test"),
                      self.disciplineRepo.get_all())