Exemple #1
0
    def validate_name(self, min_length, model, parameter):
        if len(parameter) < min_length:
            message = "The name should be at least {} symbols"
            raise Exception(message.format(min_length))

        repository = Repository(self.__db_name)
        if repository.is_name_used(model, parameter):
            raise Exception("This name is already taken")
class RepositoryTest(unittest.TestCase):

    def setUp(self):
        self.r = Repository('../../database/zoos_test_database.db')

    def test_is_name_used(self):
        self.assertTrue(self.r.is_name_used('species', 'lion'))
        self.assertTrue(not self.r.is_name_used('species', 'dog'))

        self.assertTrue(self.r.is_name_used('zoos', 'Zoo Sofia'))
        self.assertTrue(not self.r.is_name_used('zoos', 'My Awesome Zoo'))

        self.assertTrue(self.r.is_name_used('animals', 'Hippi'))
        self.assertTrue(not self.r.is_name_used('animals', 'Im Bad At Naming'))