diff --git a/ChangeLog.md b/ChangeLog.md index 12082659987..b39aee89faa 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -11,6 +11,7 @@ Modelerfour version: 4.15.378 **Bug Fixes** - Fix duplicate type signatures in multiapi async config file #727 +- Allowing single quote in regexp #726 ### 2020-06-23 - 5.1.0-preview.5 Autorest Core version: 3.0.6287 diff --git a/autorest/codegen/models/primitive_schemas.py b/autorest/codegen/models/primitive_schemas.py index 80945cd21ba..e54a99653af 100644 --- a/autorest/codegen/models/primitive_schemas.py +++ b/autorest/codegen/models/primitive_schemas.py @@ -19,7 +19,7 @@ def __init__(self, string: str) -> None: self.string = string def __repr__(self) -> str: - return f"r'{self.string}'" + return "r'{}'".format(self.string.replace('\'', '\\\'')) class PrimitiveSchema(BaseSchema): diff --git a/package.json b/package.json index 4d33fb31359..21fa4aa62ca 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ }, "devDependencies": { "@autorest/autorest": "^3.0.0", - "@microsoft.azure/autorest.testserver": "^2.10.54" + "@microsoft.azure/autorest.testserver": "^2.10.55" }, "files": [ "autorest/**/*.py", diff --git a/test/vanilla/Expected/AcceptanceTests/Validation/validation/aio/operations_async/_auto_rest_validation_test_operations_async.py b/test/vanilla/Expected/AcceptanceTests/Validation/validation/aio/operations_async/_auto_rest_validation_test_operations_async.py index cd292ddefb0..734d1fc5b74 100644 --- a/test/vanilla/Expected/AcceptanceTests/Validation/validation/aio/operations_async/_auto_rest_validation_test_operations_async.py +++ b/test/vanilla/Expected/AcceptanceTests/Validation/validation/aio/operations_async/_auto_rest_validation_test_operations_async.py @@ -47,7 +47,7 @@ async def validation_of_method_parameters( url = self.validation_of_method_parameters.metadata['url'] # type: ignore path_format_arguments = { 'subscriptionId': self._serialize.url("self._config.subscription_id", self._config.subscription_id, 'str'), - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=10, min_length=3, pattern=r'[a-zA-Z0-9']+'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=10, min_length=3, pattern=r'[a-zA-Z0-9\']+'), 'id': self._serialize.url("id", id, 'int', maximum=1000, minimum=100, multiple=10), } url = self._client.format_url(url, **path_format_arguments) diff --git a/test/vanilla/Expected/AcceptanceTests/Validation/validation/operations/_auto_rest_validation_test_operations.py b/test/vanilla/Expected/AcceptanceTests/Validation/validation/operations/_auto_rest_validation_test_operations.py index 784f55cec78..146409d1d50 100644 --- a/test/vanilla/Expected/AcceptanceTests/Validation/validation/operations/_auto_rest_validation_test_operations.py +++ b/test/vanilla/Expected/AcceptanceTests/Validation/validation/operations/_auto_rest_validation_test_operations.py @@ -52,7 +52,7 @@ def validation_of_method_parameters( url = self.validation_of_method_parameters.metadata['url'] # type: ignore path_format_arguments = { 'subscriptionId': self._serialize.url("self._config.subscription_id", self._config.subscription_id, 'str'), - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=10, min_length=3, pattern=r'[a-zA-Z0-9']+'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=10, min_length=3, pattern=r'[a-zA-Z0-9\']+'), 'id': self._serialize.url("id", id, 'int', maximum=1000, minimum=100, multiple=10), } url = self._client.format_url(url, **path_format_arguments)