Exemplo n.º 1
0
 def test_if_add_submission_adds_submission_to_list(self):
     assignment_data = ("title", "description", 10)
     assignment = Assignment(*assignment_data)
     submission_mock = Mock(Submission(Mock(Student), Mock(Assignment), "solution"))
     submission_desired_list = [submission_mock]
     assignment.add_submission(submission_mock)
     self.assertListEqual(submission_desired_list, assignment.get_submissions())
Exemplo n.º 2
0
    def add_assignment_action(self):
        """Add Assignment object

        Returns:
            None
        """
        data = self.user_input.get_assignment_data()
        if data is None:
            return
        assignment = Assignment(*data)
        assignment.add_to_assignments()

        self.view.show_message("New assignment added!")
        self.user_input.press_enter_to_continue()
Exemplo n.º 3
0
    def get_submissions_from_assignment(self):
        """Gets submission instance list of Assignment object

        Returns:
            submissions: list of submissions object
        """
        assignments = Assignment.get_assignments_list()
        self.view.show_assignments(assignments)
        group_name = "assignment's"
        assignment_index = self.user_input.get_index_input(
            len(assignments), group_name)
        assignment = assignments[assignment_index]
        submissions = assignment.get_submissions()
        return submissions
Exemplo n.º 4
0
    def show_assignments(self):
        """Show details of assignment object

        Returns:
            None
        """
        assignments = Assignment.get_assignments_list()
        self.view.show_assignments(assignments)
        group_name = "assignment's"
        user_aux_menu_decision = self.user_input.get_aux_menu_input(
            len(assignments), group_name)
        self.view.clear()
        if isinstance(user_aux_menu_decision, int):
            choosen_assignment = assignments[user_aux_menu_decision]
            self.view.show_assignment_details(choosen_assignment)
        self.user_input.press_enter_to_continue()
Exemplo n.º 5
0
    def add_submission_action(self):
        """Adds submission to class list in Submission

        Returns: None
        """
        assignments = Assignment.get_assignments_list()
        self.view.show_assignments(assignments)
        if assignments:
            group_name = "assignment's"
            index = self.user_input.get_index_input(len(assignments),
                                                    group_name)
            assignment = assignments[index]
            message = 'Please provide link to submit:'
            self.view.show_message(message)
            solution = self.user_input.get_text_input()
            submission = Submission(self.session["logged_user"], assignment,
                                    solution)
            assignment.add_submission(submission)
            self.session["logged_user"].add_submission(submission)
            self.view.show_message("Submission completed!")
        else:
            self.view.show_message('There are no assignments.')
        self.user_input.press_enter_to_continue()
Exemplo n.º 6
0
 def test_if_assignment_init_throws_exception_when_title_empty(self):
     assignment_data = ("", "description", 10)
     with self.assertRaises(ValueError):
         Assignment(*assignment_data)
Exemplo n.º 7
0
 def test_if_AssigmentIsInAssigmentListAfterAdd(self):
     assignment_data = ("title", "description", 10)
     assignment = Assignment(*assignment_data)
     assignment.add_to_assignments()
     self.assertTrue(assignment in Assignment.get_assignments())
Exemplo n.º 8
0
 def test_if_newAssigment_hasEmptySubmissionList(self):
     assignment_data = ("title", "description", 10)
     assignment = Assignment(*assignment_data)
     submission_list_length = len(assignment.get_submissions())
     self.assertEqual(submission_list_length, 0)
Exemplo n.º 9
0
 def test_if_get_max_grade_returns_proper_value(self):
     assignment_data = ("title", "description", 10)
     assignment = Assignment(*assignment_data)
     self.assertEqual(assignment.get_max_grade(), 10)
Exemplo n.º 10
0
 def test_if_add_to_assignments_adds_assignment_to_class_list(self):
     assignment_data = ("title", "description", 10)
     assignment = Assignment(*assignment_data)
     assignment_desired_list = [assignment]
     assignment.add_to_assignments()
     self.assertListEqual(assignment_desired_list, Assignment.get_assignments())
Exemplo n.º 11
0
 def test_if_assignment_init_throws_exception_when_max_grade_is_not_numeric(self):
     assignment_data = ("title", "", "string")
     with self.assertRaises(ValueError):
         Assignment(*assignment_data)
Exemplo n.º 12
0
 def test_if_assignment_init_throws_exception_when_max_grade_LT0(self):
     assignment_data = ("title", "", -1)
     with self.assertRaises(ValueError):
         Assignment(*assignment_data)