Пример #1
0
    def dictionary_constraints_test(self):
        """Test the dictionary constraints."""
        checker = StorageChecker()

        checker.add_new_constraint("x", {"a": 1, "b": 2, "c": 3})
        self.assertIn("x", checker.constraints)
        self.assertEqual(checker.constraints["x"], {"a": 1, "b": 2, "c": 3})

        checker.update_constraint("x", {"a": None, "d": 4})
        self.assertIn("x", checker.constraints)
        self.assertEqual(checker.constraints["x"], {"a": None, "b": 2, "c": 3, "d": 4})

        checker.add_constraint("x", {"e": 4, "f": 5})
        self.assertIn("x", checker.constraints)
        self.assertEqual(checker.constraints["x"], {"e": 4, "f": 5})
Пример #2
0
    def simple_constraints_test(self):
        """Test simple constraint adding."""
        checker = StorageChecker()

        # Try to add a new constraint with a wrong method.
        self.assertRaises(KeyError, checker.add_constraint, "x", None)

        # Try to add a new constraint two times.
        checker.add_new_constraint("x", None)
        self.assertRaises(KeyError, checker.add_new_constraint, "x", None)

        # Try to update a constraint with a wrong method.
        checker.add_constraint("x", 1)
        self.assertRaises(AttributeError, checker.update_constraint, "x", None)

        # Update a constraint.
        checker.add_constraint("x", {"a": 1, "b": 2})
        checker.update_constraint("x", {"c": 3})
        self.assertEqual(checker.constraints["x"], {"a": 1, "b": 2, "c": 3})