예제 #1
0
파일: base.py 프로젝트: m4dcoder/orchestra
    def _validate_expressions(cls, spec):
        result = []
        expr_schema_paths = cls.get_expr_schema_paths()

        for expr_path, schema_path in six.iteritems(expr_schema_paths):
            expr = utils.get_dict_value(spec, expr_path) or ''
            errors = expressions.validate(expr).get('errors', [])

            for error in errors:
                error['spec_path'] = expr_path
                error['schema_path'] = schema_path

            result += errors

        return result
예제 #2
0
    def test_mix_types(self):
        expr = '<% $.foo %> and {{ _.foo }}'

        expected_errors = [
            {
                'expression': expr,
                'message': (
                    'The statement contains multiple expression '
                    'types which is not supported.'
                ),
                'type': 'unspecified'
            }
        ]

        result = expressions.validate(expr)

        self.assertListEqual(
            expected_errors,
            result.get('errors', [])
        )
예제 #3
0
파일: base.py 프로젝트: m4dcoder/orchestra
 def validate(self, expr):
     return expressions.validate(expr).get('errors', [])