Exemplo n.º 1
0
 def _test_utility_splitParameters(self):
     '''
     Tests if splitting parameters works
     '''
     assert Utility.splitParameters(["test", ",", "test2"]) == [["test"], ["test2"]]
     assert Utility.splitParameters([",", ","]) == [[], []]
     assert Utility.splitParameters([",", "get"]) == [[], ["get"]]
     assert Utility.splitParameters(["FP", ",", "1", ",", "5.5", ",", "Arthur"]) == [["FP"], ["1"], ["5.5"], ["Arthur"]]
     assert Utility.splitParameters([5]) == None
Exemplo n.º 2
0
 def addGrade(self, cmd, debug = None):
     '''
     Checks if using some parameteres a grade can be added in the repository
     
     Parameters:
     cmd - contains the parts which compose a grade
     debug - used only for testing
     '''
     parameters = Utility.splitParameters(cmd)
     if parameters == None:
         raise ValueError
     if len(parameters) == 4 and len(parameters[0]) > 0 and len(parameters[1]) == 1 and len(parameters[2]) == 1 and len(parameters[3]) > 0:
         disc = parameters[0][0]
         for i in range(1, len(parameters[0])):
             disc = disc + ' ' + parameters[0][i]
             
         name = parameters[3][0]
         for i in range(1, len(parameters[3])):
             name = name + ' ' + parameters[0][i]
             
         if Controller.isDuplicate(self, disc, "discipline") != -1 and Utility.isConvertableToInt(parameters[1][0]) and Controller.isDuplicate(self, int(parameters[1][0]), "studentID") != -1 and parameters[2][0]:
             Repository.push(self._repository, Grade(disc, parameters[1][0], name, parameters[2][0]))
             return
         elif Controller.isDuplicate(self, disc, "discipline") == -1:
             raise DuplicateDisciplineError
         elif Controller.isDuplicate(self, int(parameters[1][0]), "studentID") == -1:
             raise DuplicateIDError
     raise ValueError
Exemplo n.º 3
0
 def searchDiscipline(self, cmd):
     '''
     Searches for a discipline in the list
     
     Parameters:
     cmd - the name of the discipline
     '''
     parameters = Utility.splitParameters(cmd)
     
     if len(parameters) > 0 and len(parameters[0]) > 1:
         disc = parameters[0][0]
         for i in range(1, len(parameters[0])):
             disc = disc + ' ' + parameters[0][i]
         pos = Controller.isDuplicate(self, disc, "discipline")
         if pos == -1:
             raise DuplicateDisciplineError
         print ("Discipline found!")
     raise ValueError
Exemplo n.º 4
0
 def addStudent(self, cmd):
     '''
     Checks if using some parameters a student can be added in the repository
     
     Parameters:
     cmd - contains the parts which compose a student
     debug - used only for testing
     '''
     parameters = Utility.splitParameters(cmd)
     if parameters == None:
         raise ValueError
     if len(parameters) == 1 and len(parameters[0]) > 0:
         name = parameters[0][0]
         for i in range(1, len(parameters[0])):
             name = name + ' ' + parameters[0][i]
         Repository.push(self._repository, Student(name, Controller.getID(self)))
         return
     raise ValueError
Exemplo n.º 5
0
 def addDiscipline(self, cmd, debug = None):
     '''
     Checks if using some parameters a discipline can be added in the repository
     
     Parameters:
     cmd - contains the parts which compose a discipline
     debug - used only for testing
     '''
     parameters = Utility.splitParameters(cmd)
     if parameters == None:
         raise ValueError
     if len(parameters) == 1 and len(parameters[0]) > 0:
         disc = parameters[0][0]
         for i in range(1, len(parameters[0])):
             disc = disc + ' ' + parameters[0][i]
         if Controller.isDuplicate(self, disc, "discipline") == -1:
             Repository.push(self._repository, disc)
             return
         else:
             raise DuplicateDisciplineError
     raise ValueError