forked from aws/serverless-application-model
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ci: Make transform test error json easier to diff/review (aws#2968)
- Loading branch information
Showing
229 changed files
with
1,824 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
#!/usr/bin/env python | ||
""" | ||
Transform test error JSON file formatter (without prettier). | ||
It makes error json easier to review by breaking down "errorMessage" | ||
into list of strings (delimiter: ". "). | ||
""" | ||
import os | ||
import sys | ||
|
||
from typing_extensions import Final | ||
|
||
my_path = os.path.dirname(os.path.abspath(__file__)) | ||
sys.path.insert(0, my_path + "/..") | ||
|
||
import json | ||
from typing import Type | ||
|
||
from bin._file_formatter import FileFormatter | ||
|
||
|
||
class TransformTestErrorJSONFormatter(FileFormatter): | ||
_ERROR_MESSAGE_KEY: Final[str] = "errorMessage" | ||
_BREAKDOWN_ERROR_MESSAGE_KEY: Final[str] = "_autoGeneratedBreakdownErrorMessage" | ||
_DELIMITER: Final[str] = ". " | ||
|
||
@staticmethod | ||
def description() -> str: | ||
return "Transform test error JSON file formatter" | ||
|
||
def format_str(self, input_str: str) -> str: | ||
""" | ||
It makes error json easier to review by breaking down "errorMessage" | ||
into list of strings (delimiter: ". "). | ||
""" | ||
obj = json.loads(input_str) | ||
error_message = obj.get(self._ERROR_MESSAGE_KEY) | ||
if isinstance(error_message, str): | ||
tokens = error_message.split(self._DELIMITER) | ||
obj[self._BREAKDOWN_ERROR_MESSAGE_KEY] = [ | ||
token if index == len(tokens) - 1 else token + self._DELIMITER for index, token in enumerate(tokens) | ||
] | ||
return json.dumps(obj, indent=2, sort_keys=True) + "\n" | ||
|
||
@staticmethod | ||
def decode_exception() -> Type[Exception]: | ||
return json.JSONDecodeError | ||
|
||
@staticmethod | ||
def file_extension() -> str: | ||
return ".json" | ||
|
||
|
||
if __name__ == "__main__": | ||
TransformTestErrorJSONFormatter.main() |
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_auth_invalid_path_item.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Structure of the SAM template is invalid. ", | ||
"Value of '/' path must be a dictionary according to Swagger spec." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Structure of the SAM template is invalid. Value of '/' path must be a dictionary according to Swagger spec." | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Structure of the SAM template is invalid. ", | ||
"Value of '/' path must be a dictionary according to Swagger spec." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Structure of the SAM template is invalid. Value of '/' path must be a dictionary according to Swagger spec." | ||
} |
8 changes: 8 additions & 0 deletions
8
...s/translator/output/error_api_authorizer_property_indentity_header_with_invalid_type.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,11 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 2. ", | ||
"Resource with id [MyApi] is invalid. ", | ||
"Property 'Authorizers.MyLambdaAuthUpdated.Identity.Headers[0]' should be a string. ", | ||
"Resource with id [MyApi2] is invalid. ", | ||
"Property 'Authorizers.MyLambdaAuthUpdated.Identity.QueryStrings' should be a list." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 2. Resource with id [MyApi] is invalid. Property 'Authorizers.MyLambdaAuthUpdated.Identity.Headers[0]' should be a string. Resource with id [MyApi2] is invalid. Property 'Authorizers.MyLambdaAuthUpdated.Identity.QueryStrings' should be a list." | ||
} |
12 changes: 12 additions & 0 deletions
12
tests/translator/output/error_api_authorizer_property_indentity_with_invalid_type.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,15 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 4. ", | ||
"Resource with id [MyApi] is invalid. ", | ||
"Property 'Auth.Authorizers.MyLambdaAuthUpdated.Identity' should be a map. ", | ||
"Resource with id [MyRestApi] is invalid. ", | ||
"Property 'Authorizer.LambdaRequestIdentityNotObject.Identity' should be a map. ", | ||
"Resource with id [MyRestApiInvalidHeadersItemType] is invalid. ", | ||
"Property 'Auth.Authorizers.LambdaRequestIdentityNotObject.Identity.Headers[1]' should be a string. ", | ||
"Resource with id [MyRestApiInvalidHeadersType] is invalid. ", | ||
"Property 'Auth.Authorizers.LambdaRequestIdentityNotObject.Identity.Headers' should be a list." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 4. Resource with id [MyApi] is invalid. Property 'Auth.Authorizers.MyLambdaAuthUpdated.Identity' should be a map. Resource with id [MyRestApi] is invalid. Property 'Authorizer.LambdaRequestIdentityNotObject.Identity' should be a map. Resource with id [MyRestApiInvalidHeadersItemType] is invalid. Property 'Auth.Authorizers.LambdaRequestIdentityNotObject.Identity.Headers[1]' should be a string. Resource with id [MyRestApiInvalidHeadersType] is invalid. Property 'Auth.Authorizers.LambdaRequestIdentityNotObject.Identity.Headers' should be a list." | ||
} |
7 changes: 7 additions & 0 deletions
7
tests/translator/output/error_api_duplicate_methods_same_path.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7 changes: 7 additions & 0 deletions
7
tests/translator/output/error_api_event_import_vaule_reference.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,10 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [Function] is invalid. ", | ||
"Event with id [GetHtml] is invalid. ", | ||
"Property 'RestApiId' should be a string." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [Function] is invalid. Event with id [GetHtml] is invalid. Property 'RestApiId' should be a string." | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,10 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [MyFunction] is invalid. ", | ||
"Event with id [Event1] is invalid. ", | ||
"RestApiId must be a valid reference to an 'AWS::Serverless::Api' resource in same template." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [MyFunction] is invalid. Event with id [Event1] is invalid. RestApiId must be a valid reference to an 'AWS::Serverless::Api' resource in same template." | ||
} |
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_event_ref_invalid_resource.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [RestApi] is invalid. ", | ||
"Attribute 'Properties' should be a map." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [RestApi] is invalid. Attribute 'Properties' should be a map." | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,10 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [MyFunction] is invalid. ", | ||
"Event with id [Event1] is invalid. ", | ||
"RestApiId must be a valid reference to an 'AWS::Serverless::Api' resource in same template." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [MyFunction] is invalid. Event with id [Event1] is invalid. RestApiId must be a valid reference to an 'AWS::Serverless::Api' resource in same template." | ||
} |
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_gateway_responses_nonnumeric_status_code.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [ExplicitApi] is invalid. ", | ||
"Property 'StatusCode' must be numeric" | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [ExplicitApi] is invalid. Property 'StatusCode' must be numeric" | ||
} |
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_gateway_responses_responseparameter_invalid_type.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [ExplicitApi] is invalid. ", | ||
"Property 'GatewayResponses.UNAUTHORIZED.ResponseParameters' should be a map." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [ExplicitApi] is invalid. Property 'GatewayResponses.UNAUTHORIZED.ResponseParameters' should be a map." | ||
} |
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_gateway_responses_unknown_responseparameter.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [ExplicitApi] is invalid. ", | ||
"Invalid gateway response parameter 'Footers'" | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [ExplicitApi] is invalid. Invalid gateway response parameter 'Footers'" | ||
} |
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_gateway_responses_unknown_responseparameter_property.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [ExplicitApi] is invalid. ", | ||
"Invalid property 'SubStatusCode' in 'GatewayResponses' property 'UNAUTHORIZED'." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [ExplicitApi] is invalid. Invalid property 'SubStatusCode' in 'GatewayResponses' property 'UNAUTHORIZED'." | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,51 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 20. ", | ||
"Resource with id [AuthNotDictApi] is invalid. ", | ||
"Property 'Auth' should be a map. ", | ||
"Resource with id [AuthWithAdditionalPropertyApi] is invalid. ", | ||
"Invalid value for 'Auth' property Resource with id [AuthWithDefinitionUriApi] is invalid. ", | ||
"Auth works only with inline Swagger specified in 'DefinitionBody' property. ", | ||
"Resource with id [AuthWithInvalidDefinitionBodyApi] is invalid. ", | ||
"Unable to add Auth configuration because 'DefinitionBody' does not contain a valid Swagger definition. ", | ||
"Resource with id [AuthWithMissingDefaultAuthorizerApi] is invalid. ", | ||
"Unable to set DefaultAuthorizer because 'NotThere' was not defined in 'Authorizers'. ", | ||
"Resource with id [AuthorizerNotDict] is invalid. ", | ||
"Property 'Auth.Authorizers.MyCognitoAuthorizer' should be a map. ", | ||
"Resource with id [AuthorizerWithBadDisableFunctionDefaultPermissionsType] is invalid. ", | ||
"Property 'Authorizers.MyAuth.DisableFunctionDefaultPermissions' should be a boolean. ", | ||
"Resource with id [AuthorizersNotDictApi] is invalid. ", | ||
"Property 'Auth.Authorizers' should be a map. ", | ||
"Resource with id [IntrinsicDefaultAuthorizerApi] is invalid. ", | ||
"Property 'Auth.DefaultAuthorizer' should be a string. ", | ||
"Resource with id [InvalidFunctionPayloadTypeApi] is invalid. ", | ||
"MyLambdaAuthorizer Authorizer has invalid 'FunctionPayloadType': INVALID. ", | ||
"Resource with id [MissingAuthorizerFn] is invalid. ", | ||
"Event with id [GetRoot] is invalid. ", | ||
"Unable to set Authorizer [UnspecifiedAuthorizer] on API method [get] for path [/] because it wasn't defined in the API's Authorizers. ", | ||
"Resource with id [NoApiAuthorizerFn] is invalid. ", | ||
"Event with id [GetRoot] is invalid. ", | ||
"Unable to set Authorizer [MyAuth] on API method [get] for path [/] because the related API does not define any Authorizers. ", | ||
"Resource with id [NoAuthFn] is invalid. ", | ||
"Event with id [GetRoot] is invalid. ", | ||
"Unable to set Authorizer [MyAuth] on API method [get] for path [/] because the related API does not define any Authorizers. ", | ||
"Resource with id [NoAuthorizersFn] is invalid. ", | ||
"Event with id [GetRoot] is invalid. ", | ||
"Unable to set Authorizer [MyAuth] on API method [get] for path [/] because the related API does not define any Authorizers. ", | ||
"Resource with id [NoDefaultAuthorizerWithNoneFn] is invalid. ", | ||
"Event with id [GetRoot] is invalid. ", | ||
"Unable to set Authorizer on API method [get] for path [/] because 'NONE' is only a valid value when a DefaultAuthorizer on the API is specified. ", | ||
"Resource with id [NoIdentityOnRequestAuthorizer] is invalid. ", | ||
"MyLambdaRequestAuthorizer Authorizer must specify Identity with at least one of Headers, QueryStrings, StageVariables, or Context. ", | ||
"Resource with id [NoIdentitySourceOnRequestAuthorizer] is invalid. ", | ||
"MyLambdaRequestAuthorizer Authorizer must specify Identity with at least one of Headers, QueryStrings, StageVariables, or Context. ", | ||
"Resource with id [NonDictAuthorizerApi] is invalid. ", | ||
"Property 'Auth.Authorizers.MyAuth' should be a map. ", | ||
"Resource with id [NonDictAuthorizerRestApi] is invalid. ", | ||
"Property 'Auth.Authorizers.MyAuth' should be a map. ", | ||
"Resource with id [NonStringDefaultAuthorizerApi] is invalid. ", | ||
"Property 'Auth.DefaultAuthorizer' should be a string." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 20. Resource with id [AuthNotDictApi] is invalid. Property 'Auth' should be a map. Resource with id [AuthWithAdditionalPropertyApi] is invalid. Invalid value for 'Auth' property Resource with id [AuthWithDefinitionUriApi] is invalid. Auth works only with inline Swagger specified in 'DefinitionBody' property. Resource with id [AuthWithInvalidDefinitionBodyApi] is invalid. Unable to add Auth configuration because 'DefinitionBody' does not contain a valid Swagger definition. Resource with id [AuthWithMissingDefaultAuthorizerApi] is invalid. Unable to set DefaultAuthorizer because 'NotThere' was not defined in 'Authorizers'. Resource with id [AuthorizerNotDict] is invalid. Property 'Auth.Authorizers.MyCognitoAuthorizer' should be a map. Resource with id [AuthorizerWithBadDisableFunctionDefaultPermissionsType] is invalid. Property 'Authorizers.MyAuth.DisableFunctionDefaultPermissions' should be a boolean. Resource with id [AuthorizersNotDictApi] is invalid. Property 'Auth.Authorizers' should be a map. Resource with id [IntrinsicDefaultAuthorizerApi] is invalid. Property 'Auth.DefaultAuthorizer' should be a string. Resource with id [InvalidFunctionPayloadTypeApi] is invalid. MyLambdaAuthorizer Authorizer has invalid 'FunctionPayloadType': INVALID. Resource with id [MissingAuthorizerFn] is invalid. Event with id [GetRoot] is invalid. Unable to set Authorizer [UnspecifiedAuthorizer] on API method [get] for path [/] because it wasn't defined in the API's Authorizers. Resource with id [NoApiAuthorizerFn] is invalid. Event with id [GetRoot] is invalid. Unable to set Authorizer [MyAuth] on API method [get] for path [/] because the related API does not define any Authorizers. Resource with id [NoAuthFn] is invalid. Event with id [GetRoot] is invalid. Unable to set Authorizer [MyAuth] on API method [get] for path [/] because the related API does not define any Authorizers. Resource with id [NoAuthorizersFn] is invalid. Event with id [GetRoot] is invalid. Unable to set Authorizer [MyAuth] on API method [get] for path [/] because the related API does not define any Authorizers. Resource with id [NoDefaultAuthorizerWithNoneFn] is invalid. Event with id [GetRoot] is invalid. Unable to set Authorizer on API method [get] for path [/] because 'NONE' is only a valid value when a DefaultAuthorizer on the API is specified. Resource with id [NoIdentityOnRequestAuthorizer] is invalid. MyLambdaRequestAuthorizer Authorizer must specify Identity with at least one of Headers, QueryStrings, StageVariables, or Context. Resource with id [NoIdentitySourceOnRequestAuthorizer] is invalid. MyLambdaRequestAuthorizer Authorizer must specify Identity with at least one of Headers, QueryStrings, StageVariables, or Context. Resource with id [NonDictAuthorizerApi] is invalid. Property 'Auth.Authorizers.MyAuth' should be a map. Resource with id [NonDictAuthorizerRestApi] is invalid. Property 'Auth.Authorizers.MyAuth' should be a map. Resource with id [NonStringDefaultAuthorizerApi] is invalid. Property 'Auth.DefaultAuthorizer' should be a string." | ||
} |
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_invalid_auth_identity_cognito.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_invalid_auth_identity_lambda_request.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 6 additions & 0 deletions
6
tests/translator/output/error_api_invalid_definitionbody.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
{ | ||
"_autoGeneratedBreakdownErrorMessage": [ | ||
"Invalid Serverless Application Specification document. ", | ||
"Number of errors found: 1. ", | ||
"Resource with id [ApiWithInvalidBodyType] is invalid. ", | ||
"Property 'DefinitionBody' should be a map." | ||
], | ||
"errorMessage": "Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [ApiWithInvalidBodyType] is invalid. Property 'DefinitionBody' should be a map." | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.