示例#1
0
    def test_validate_with_admin(self):
        validator = validators.RequiredClientsValidator(
            components=["keystone", "nova"], admin=True)
        clients = self.credentials["openstack"]["admin"].clients.return_value
        result = validator.validate(self.config, self.credentials, None, None)
        self.assertIsNone(result)

        clients.keystone.side_effect = ImportError
        result = validator.validate(self.config, self.credentials, None, None)
        self.assertTrue(result)
        self.assertEqual(
            "Client for keystone is not installed. To install it "
            "run `pip install python-keystoneclient`", result.msg)
示例#2
0
    def test_validate_with_admin(self):
        validator = validators.RequiredClientsValidator(
            components=["keystone", "nova"], admin=True)
        clients = self.context["admin"]["credential"].clients.return_value
        result = validator.validate(self.context, self.config, None, None)
        self.assertIsNone(result)

        clients.keystone.side_effect = ImportError
        e = self.assertRaises(validators.validation.ValidationError,
                              validator.validate, self.context, self.config,
                              None, None)
        self.assertEqual(
            "Client for keystone is not installed. To install it "
            "run `pip install python-keystoneclient`", e.message)
示例#3
0
    def test_validate(self):
        validator = validators.RequiredClientsValidator(components=["keystone",
                                                                    "nova"])
        clients = self.credentials[
            "openstack"]["users"][0]["credential"].clients.return_value

        result = validator.validate(self.config, self.credentials, None, None)
        self.assertIsNone(result)

        clients.nova.side_effect = ImportError
        result = validator.validate(self.config, self.credentials, None, None)
        self.assertIsNotNone(result)
        self.assertEqual("Client for nova is not installed. To install it "
                         "run `pip install python-novaclient`", result.msg)