예제 #1
0
    def test_mem_alarm_high_not_integer_parameters(self):
        snippet = template_format.parse(not_string_alarm_template)
        for p in ('period', 'evaluation_periods'):
            snippet['Resources']['MEMAlarmHigh']['Properties'][p] = [60]
            stack = utils.parse_stack(snippet)

            rsrc = alarm.CeilometerAlarm(
                'MEMAlarmHigh', snippet['Resources']['MEMAlarmHigh'], stack)
            error = self.assertRaises(exception.StackValidationFailed,
                                      rsrc.validate)
            self.assertEqual(
                "Property error : MEMAlarmHigh: %s int() argument must be "
                "a string or a number, not 'list'" % p, str(error))
예제 #2
0
    def test_mem_alarm_high_check_not_required_parameters(self):
        snippet = template_format.parse(not_string_alarm_template)
        snippet['Resources']['MEMAlarmHigh']['Properties'].pop('meter_name')
        stack = utils.parse_stack(snippet)

        rsrc = alarm.CeilometerAlarm(
            'MEMAlarmHigh', snippet['Resources']['MEMAlarmHigh'], stack)
        error = self.assertRaises(exception.StackValidationFailed,
                                  rsrc.validate)
        self.assertEqual(
            "Property error : MEMAlarmHigh: Property meter_name not assigned",
            str(error))

        for p in ('period', 'evaluation_periods', 'statistic',
                  'comparison_operator'):
            snippet = template_format.parse(not_string_alarm_template)
            snippet['Resources']['MEMAlarmHigh']['Properties'].pop(p)
            stack = utils.parse_stack(snippet)

            rsrc = alarm.CeilometerAlarm(
                'MEMAlarmHigh', snippet['Resources']['MEMAlarmHigh'], stack)
            self.assertIsNone(rsrc.validate())
예제 #3
0
    def test_mem_alarm_high_not_correct_string_parameters(self):
        snippet = template_format.parse(not_string_alarm_template)
        for p in ('period', 'evaluation_periods'):
            snippet['Resources']['MEMAlarmHigh']['Properties'][p] = '60a'
            stack = utils.parse_stack(snippet)

            rsrc = alarm.CeilometerAlarm(
                'MEMAlarmHigh', snippet['Resources']['MEMAlarmHigh'], stack)
            error = self.assertRaises(exception.StackValidationFailed,
                                      rsrc.validate)
            self.assertEqual(
                "Property error : MEMAlarmHigh: %s Value '60a' is not an "
                "integer" % p, str(error))