@@ -187,12 +187,18 @@ def is_expression(_checker: TypeChecker, instance: Any) -> bool:
187187 return isinstance (instance , ExpressionString )
188188
189189
190- def load_schema_validator (dsl_object : YamlObject = None , file : str = "schema-strict.json" ) -> Validator :
190+ def load_schema_validator (
191+ dsl_object : YamlObject = None , file : str = "schema-strict.json"
192+ ) -> Validator :
191193 """
192194 Load the JSON Schema validator used to check DSL test suites.
193195 """
194196 # if the programming language is set in the root, tested_dsl_expressions don't need to be parseable
195- language_present = dsl_object is not None and "language" in dsl_object
197+ language_present = (
198+ dsl_object is not None
199+ and isinstance (dsl_object , dict )
200+ and "language" in dsl_object
201+ )
196202
197203 def validate_tested_dsl_expression (value : object ) -> bool :
198204 if not isinstance (value , str ):
@@ -213,7 +219,9 @@ def validate_tested_dsl_expression(value: object) -> bool:
213219 "oracle" , is_oracle
214220 ).redefine ("expression" , is_expression )
215221 format_checker = original_validator .FORMAT_CHECKER
216- format_checker .checks ("tested-dsl-expression" , SyntaxError )(validate_tested_dsl_expression )
222+ format_checker .checks ("tested-dsl-expression" , SyntaxError )(
223+ validate_tested_dsl_expression
224+ )
217225 tested_validator = extend_validator (original_validator , type_checker = type_checker )
218226 return tested_validator (schema_object , format_checker = format_checker )
219227
0 commit comments