diff --git a/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_models.py b/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_models.py index 239a4bc917df..9a4896cdec2e 100644 --- a/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_models.py +++ b/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_models.py @@ -17,6 +17,7 @@ from azure.core.exceptions import HttpResponseError from azure.core.paging import PageIterator +from ._generated._utils.serialization import Deserializer from ._generated.models import AccessPolicy as GenAccessPolicy from ._generated.models import CorsRule as GeneratedCorsRule from ._generated.models import DirectoryItem @@ -26,7 +27,6 @@ from ._generated.models import ShareSmbSettings as GeneratedShareSmbSettings from ._generated.models import SmbMultichannel as GeneratedSmbMultichannel from ._generated.models import StorageServiceProperties as GeneratedStorageServiceProperties -from ._parser import _parse_datetime_from_str from ._shared.models import DictMixin, get_enum_value from ._shared.response_handlers import process_storage_error, return_context_and_deserialized @@ -932,9 +932,12 @@ def __init__(self, **kwargs: Any) -> None: self.etag = kwargs.get('ETag') # type: ignore [assignment] self.server_encrypted = kwargs.get('x-ms-server-encrypted') # type: ignore [assignment] self.metadata = kwargs.get('metadata') # type: ignore [assignment] - self.change_time = _parse_datetime_from_str(kwargs.get('x-ms-file-change-time')) - self.creation_time = _parse_datetime_from_str(kwargs.get('x-ms-file-creation-time')) - self.last_write_time = _parse_datetime_from_str(kwargs.get('x-ms-file-last-write-time')) + self.change_time = Deserializer.deserialize_iso(kwargs.get('x-ms-file-change-time')) if ( + kwargs.get('x-ms-file-change-time') is not None) else None + self.creation_time = Deserializer.deserialize_iso(kwargs.get('x-ms-file-creation-time')) if ( + kwargs.get('x-ms-file-creation-time') is not None) else None + self.last_write_time = Deserializer.deserialize_iso(kwargs.get('x-ms-file-last-write-time')) if ( + kwargs.get('x-ms-file-last-write-time') is not None) else None self.last_access_time = None self.file_attributes = kwargs.get('x-ms-file-attributes') # type: ignore [assignment] self.permission_key = kwargs.get('x-ms-file-permission-key') # type: ignore [assignment] @@ -1180,9 +1183,12 @@ def __init__(self, **kwargs: Any) -> None: self.copy = CopyProperties(**kwargs) self.content_settings = ContentSettings(**kwargs) self.lease = LeaseProperties(**kwargs) - self.change_time = _parse_datetime_from_str(kwargs.get('x-ms-file-change-time')) - self.creation_time = _parse_datetime_from_str(kwargs.get('x-ms-file-creation-time')) - self.last_write_time = _parse_datetime_from_str(kwargs.get('x-ms-file-last-write-time')) + self.change_time = Deserializer.deserialize_iso(kwargs.get('x-ms-file-change-time')) if ( + kwargs.get('x-ms-file-change-time') is not None) else None + self.creation_time = Deserializer.deserialize_iso(kwargs.get('x-ms-file-creation-time')) if ( + kwargs.get('x-ms-file-creation-time') is not None) else None + self.last_write_time = Deserializer.deserialize_iso(kwargs.get('x-ms-file-last-write-time')) if ( + kwargs.get('x-ms-file-last-write-time') is not None) else None self.last_access_time = None self.file_attributes = kwargs.get('x-ms-file-attributes') # type: ignore [assignment] self.permission_key = kwargs.get('x-ms-file-permission-key') # type: ignore [assignment] diff --git a/sdk/storage/azure-storage-file-share/tests/test_directory.py b/sdk/storage/azure-storage-file-share/tests/test_directory.py index 1b879d78bc1a..dd0f5e4afcec 100644 --- a/sdk/storage/azure-storage-file-share/tests/test_directory.py +++ b/sdk/storage/azure-storage-file-share/tests/test_directory.py @@ -4,7 +4,7 @@ # license information. # -------------------------------------------------------------------------- import unittest -from datetime import datetime, timedelta +from datetime import datetime, timedelta, timezone import pytest from azure.core.exceptions import ClientAuthenticationError, ResourceExistsError, ResourceNotFoundError @@ -110,7 +110,7 @@ def test_create_directory_set_smb_properties(self, **kwargs): directory_client = share_client.get_directory_client('dir1') file_attributes = NTFSAttributes(read_only=True, directory=True) - file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000) + file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act directory_client.create_directory( @@ -1262,9 +1262,9 @@ def test_rename_directory_smb_properties(self, **kwargs): source_directory = share_client.create_directory('dir1') file_attributes = NTFSAttributes(read_only=True, directory=True) - file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000) - file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000) - file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000) + file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000, tzinfo=timezone.utc) + file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000, tzinfo=timezone.utc) + file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act new_directory = source_directory.rename_directory( diff --git a/sdk/storage/azure-storage-file-share/tests/test_directory_async.py b/sdk/storage/azure-storage-file-share/tests/test_directory_async.py index 9e87810938e0..d1010ced0b09 100644 --- a/sdk/storage/azure-storage-file-share/tests/test_directory_async.py +++ b/sdk/storage/azure-storage-file-share/tests/test_directory_async.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- import unittest import asyncio -from datetime import datetime, timedelta +from datetime import datetime, timedelta, timezone import pytest from azure.core.exceptions import ClientAuthenticationError, ResourceExistsError, ResourceNotFoundError @@ -115,7 +115,7 @@ async def test_create_directory_set_smb_properties(self, **kwargs): directory_client = share_client.get_directory_client('dir1') file_attributes = NTFSAttributes(read_only=True, directory=True) - file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000) + file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act await directory_client.create_directory( @@ -1362,9 +1362,9 @@ async def test_rename_directory_smb_properties(self, **kwargs): source_directory = await share_client.create_directory('dir1') file_attributes = NTFSAttributes(read_only=True, directory=True) - file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000) - file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000) - file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000) + file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000, tzinfo=timezone.utc) + file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000, tzinfo=timezone.utc) + file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act new_directory = await source_directory.rename_directory( diff --git a/sdk/storage/azure-storage-file-share/tests/test_file.py b/sdk/storage/azure-storage-file-share/tests/test_file.py index 819b6293c14d..627bcd85ed57 100644 --- a/sdk/storage/azure-storage-file-share/tests/test_file.py +++ b/sdk/storage/azure-storage-file-share/tests/test_file.py @@ -642,7 +642,7 @@ def test_create_file_set_smb_properties(self, **kwargs): file_client = self._get_file_client() file_attributes = NTFSAttributes(read_only=True, archive=True) - file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000) + file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act file_client.create_file( @@ -3598,9 +3598,9 @@ def test_rename_file_smb_properties(self, **kwargs): source_file = self._create_file('file1') file_attributes = NTFSAttributes(read_only=True, archive=True) - file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000) - file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000) - file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000) + file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000, tzinfo=timezone.utc) + file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000, tzinfo=timezone.utc) + file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act new_file = source_file.rename_file( diff --git a/sdk/storage/azure-storage-file-share/tests/test_file_async.py b/sdk/storage/azure-storage-file-share/tests/test_file_async.py index f3cc42f5da46..0320c76b3b1c 100644 --- a/sdk/storage/azure-storage-file-share/tests/test_file_async.py +++ b/sdk/storage/azure-storage-file-share/tests/test_file_async.py @@ -657,7 +657,7 @@ async def test_create_file_set_smb_properties(self, **kwargs): file_client = await self._get_file_client(storage_account_name, storage_account_key) file_attributes = NTFSAttributes(read_only=True, archive=True) - file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000) + file_creation_time = file_last_write_time = file_change_time = datetime(2022, 3, 10, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act await file_client.create_file( @@ -3711,9 +3711,9 @@ async def test_rename_file_smb_properties(self, **kwargs): source_file = await self._create_file(storage_account_name, storage_account_key, 'file1') file_attributes = NTFSAttributes(read_only=True, archive=True) - file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000) - file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000) - file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000) + file_creation_time = datetime(2022, 1, 26, 10, 9, 30, 500000, tzinfo=timezone.utc) + file_last_write_time = datetime(2022, 1, 26, 10, 14, 30, 500000, tzinfo=timezone.utc) + file_change_time = datetime(2022, 3, 7, 10, 14, 30, 500000, tzinfo=timezone.utc) # Act new_file = await source_file.rename_file(