Esempio n. 1
0
    def test_validator_incorrect_result(self, mock__get_validated_image,
                                        mock__get_validated_flavor):

        validator = validators.ImageValidOnFlavorValidator(
            "foo_flavor", "image", fail_on_404_image=False)

        image = self.config["args"]["image"]
        flavor = mock.Mock(ram=15, disk=15.0 * (1024**3))

        success = validators.ValidationResult(True, "Success")
        fail = validators.ValidationResult(False, "Not success")

        user = self.credentials["openstack"]["users"][0]["credential"]
        user.clients().nova().flavors.get.return_value = "foo_flavor"

        # Flavor is incorrect
        mock__get_validated_flavor.return_value = (fail, flavor)
        result = validator.validate(self.config, self.credentials, None, None)

        self.assertIsNotNone(result)
        self.assertEqual("Not success", result.msg)

        # image is incorrect
        user.clients().nova().flavors.get.return_value = "foo_flavor"
        mock__get_validated_flavor.reset_mock()
        mock__get_validated_flavor.return_value = (success, flavor)
        mock__get_validated_image.return_value = (success, None)
        result = validator.validate(self.config, self.credentials, None, None)
        self.assertIsNone(result)
        mock__get_validated_image.reset_mock()
        mock__get_validated_image.return_value = (fail, image)
        result = validator.validate(self.config, self.credentials, None, None)
        self.assertIsNotNone(result)
        self.assertEqual("Not success", result.msg)
        # 'fail_on_404_image' == True
        result = self.validator.validate(self.config, self.credentials, None,
                                         None)
        self.assertIsNotNone(result)
        self.assertEqual("Not success", result.msg)
        # 'validate_disk' = False
        validator = validators.ImageValidOnFlavorValidator("foo_flavor",
                                                           "image",
                                                           validate_disk=False)
        mock__get_validated_image.reset_mock()
        mock__get_validated_image.return_value = (success, image)
        result = validator.validate(self.config, self.credentials, None, None)
        self.assertIsNone(result)
Esempio n. 2
0
    def test_validator(self, flavor_ram, flavor_disk, err_msg):
        image = config["args"]["image"]
        flavor = mock.Mock(ram=flavor_ram, disk=flavor_disk)

        success = validators.ValidationResult(True)

        user = self.credentials["openstack"]["users"][0]["credential"]
        user.clients().nova().flavors.get.return_value = "foo_flavor"

        self.validator._get_validated_image = mock.Mock()
        self.validator._get_validated_image.return_value = (success, image)

        self.validator._get_validated_flavor = mock.Mock()
        self.validator._get_validated_flavor.return_value = (success, flavor)

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

        if err_msg:
            self.assertEqual(err_msg % flavor.id, result.msg)
        else:
            self.assertIsNone(result, "Unexpected message")