Esempio n. 1
0
    def test_is_state_valid_with_invalid_states(self):
        contains_negative_number = State(0, -1, 0)
        more_cannibals_than_missionaries_on_wrong_side1 = State(1, 3, 0)
        more_cannibals_than_missionaries_on_wrong_side2 = State(2, 3, 0)
        more_cannibals_than_missionaries_on_wrong_side3 = State(1, 2, 0)
        more_cannibals_than_missionaries_on_right_side1 = State(2, 1, 0)
        more_cannibals_than_missionaries_on_right_side2 = State(1, 0, 0)
        more_than_one_boat = State(3, 2, 2)
        more_cannibals_than_initial_state = State(4, 3, 1)
        more_missionaries_than_initial_state = State(3, 4, 1)

        self.assertFalse(contains_negative_number.is_valid())
        self.assertFalse(
            more_cannibals_than_missionaries_on_wrong_side1.is_valid())
        self.assertFalse(
            more_cannibals_than_missionaries_on_wrong_side2.is_valid())
        self.assertFalse(
            more_cannibals_than_missionaries_on_wrong_side3.is_valid())
        self.assertFalse(
            more_cannibals_than_missionaries_on_right_side1.is_valid())
        self.assertFalse(
            more_cannibals_than_missionaries_on_right_side2.is_valid())
        self.assertFalse(more_than_one_boat.is_valid())
        self.assertFalse(more_cannibals_than_initial_state.is_valid())
        self.assertFalse(more_missionaries_than_initial_state.is_valid())
Esempio n. 2
0
    def test_is_state_valid_with_valid_states(self):
        more_missionaries_than_cannibals = State(3, 2, 0)
        equal_number_of_missionaries_and_cannibals = State(2, 2, 0)

        self.assertTrue(more_missionaries_than_cannibals.is_valid())
        self.assertTrue(equal_number_of_missionaries_and_cannibals.is_valid())