def _outputs(self): outputs = [] for name, attrs in self._tpl_outputs().items(): output = Output(name, attrs) output.validate() outputs.append(output) return outputs
def test_outputs(self): tpl_snippet = ''' outputs: server_address: description: IP address of server instance. values: { get_property: [server, private_address] } ''' outputs = (translator.toscalib.utils.yamlparser. simple_parse(tpl_snippet)['outputs']) name, attrs = list(outputs.items())[0] output = Output(name, attrs) try: output.validate() except Exception as err: self.assertTrue( isinstance(err, exception.MissingRequiredFieldError)) self.assertEqual('Output server_address is missing required ' 'field: "value".', err.__str__()) tpl_snippet = ''' outputs: server_address: descriptions: IP address of server instance. value: { get_property: [server, private_address] } ''' outputs = (translator.toscalib.utils.yamlparser. simple_parse(tpl_snippet)['outputs']) name, attrs = list(outputs.items())[0] output = Output(name, attrs) try: output.validate() except Exception as err: self.assertTrue(isinstance(err, exception.UnknownFieldError)) self.assertEqual('Output server_address contain(s) unknown ' 'field: "descriptions", refer to the definition ' 'to verify valid values.', err.__str__())