diff --git a/azure-functions-extension-blob/tests/test_blobclient.py b/azure-functions-extension-blob/tests/test_blobclient.py index c8c23af..0bc6964 100644 --- a/azure-functions-extension-blob/tests/test_blobclient.py +++ b/azure-functions-extension-blob/tests/test_blobclient.py @@ -78,6 +78,12 @@ def test_input_none(self): ) self.assertIsNone(result) + datum: Datum = Datum(value=b"string_content", type=None) + result = BlobClientConverter.decode( + data=datum, trigger_metadata=None, pytype=BlobClient + ) + self.assertIsNone(result) + def test_input_incorrect_type(self): datum: Datum = Datum(value=b"string_content", type="bytearray") with self.assertRaises(ValueError): @@ -119,6 +125,27 @@ def test_input_populated(self): self.assertIsNotNone(sdk_result) self.assertIsInstance(sdk_result, BlobClientSdk) + def test_input_invalid_pytype(self): + content = { + "Connection": "AzureWebJobsStorage", + "ContainerName": "test-blob", + "BlobName": "text.txt", + } + + sample_mbd = MockMBD( + version="1.0", + source="AzureStorageBlobs", + content_type="application/json", + content=json.dumps(content), + ) + + datum: Datum = Datum(value=sample_mbd, type="model_binding_data") + result: BlobClient = BlobClientConverter.decode( + data=datum, trigger_metadata=None, pytype="str" + ) + + self.assertIsNone(result) + def test_blob_client_invalid_creation(self): # Create test binding mock_blob = MockBinding( diff --git a/azure-functions-extension-blob/tests/test_containerclient.py b/azure-functions-extension-blob/tests/test_containerclient.py index d95d211..39cabfa 100644 --- a/azure-functions-extension-blob/tests/test_containerclient.py +++ b/azure-functions-extension-blob/tests/test_containerclient.py @@ -78,6 +78,12 @@ def test_input_none(self): ) self.assertIsNone(result) + datum: Datum = Datum(value=b"string_content", type=None) + result = BlobClientConverter.decode( + data=datum, trigger_metadata=None, pytype=ContainerClient + ) + self.assertIsNone(result) + def test_input_incorrect_type(self): datum: Datum = Datum(value=b"string_content", type="bytearray") with self.assertRaises(ValueError): @@ -117,6 +123,27 @@ def test_input_populated(self): self.assertIsNotNone(sdk_result) self.assertIsInstance(sdk_result, ContainerClientSdk) + def test_input_invalid_pytype(self): + content = { + "Connection": "AzureWebJobsStorage", + "ContainerName": "test-blob", + "BlobName": "text.txt", + } + + sample_mbd = MockMBD( + version="1.0", + source="AzureStorageBlobs", + content_type="application/json", + content=json.dumps(content), + ) + + datum: Datum = Datum(value=sample_mbd, type="model_binding_data") + result: ContainerClient = BlobClientConverter.decode( + data=datum, trigger_metadata=None, pytype="str" + ) + + self.assertIsNone(result) + def test_container_client_invalid_creation(self): # Create test binding mock_blob = MockBinding( diff --git a/azure-functions-extension-blob/tests/test_ssd.py b/azure-functions-extension-blob/tests/test_ssd.py index a57859f..59cc06f 100644 --- a/azure-functions-extension-blob/tests/test_ssd.py +++ b/azure-functions-extension-blob/tests/test_ssd.py @@ -78,6 +78,12 @@ def test_input_none(self): ) self.assertIsNone(result) + datum: Datum = Datum(value=b"string_content", type=None) + result = BlobClientConverter.decode( + data=datum, trigger_metadata=None, pytype=StorageStreamDownloader + ) + self.assertIsNone(result) + def test_input_incorrect_type(self): datum: Datum = Datum(value=b"string_content", type="bytearray") with self.assertRaises(ValueError): @@ -119,6 +125,27 @@ def test_input_populated(self): self.assertIsNotNone(sdk_result) self.assertIsInstance(sdk_result, SSDSdk) + def test_input_invalid_pytype(self): + content = { + "Connection": "AzureWebJobsStorage", + "ContainerName": "test-blob", + "BlobName": "text.txt", + } + + sample_mbd = MockMBD( + version="1.0", + source="AzureStorageBlobs", + content_type="application/json", + content=json.dumps(content), + ) + + datum: Datum = Datum(value=sample_mbd, type="model_binding_data") + result: StorageStreamDownloader = BlobClientConverter.decode( + data=datum, trigger_metadata=None, pytype="str" + ) + + self.assertIsNone(result) + def test_ssd_invalid_creation(self): # Create test binding mock_blob = MockBinding(