diff --git a/tests/test_durable_functions.py b/tests/test_durable_functions.py index 1739cdcd..353492d8 100644 --- a/tests/test_durable_functions.py +++ b/tests/test_durable_functions.py @@ -212,3 +212,31 @@ def test_activity_trigger_has_implicit_return(self): self.assertTrue( ActivityTriggerConverter.has_implicit_output() ) + + def test_enitity_trigger_check_output_type_annotation(self): + self.assertTrue( + EnitityTriggerConverter.check_output_type_annotation(pytype=None) + ) + + def test_activity_trigger_converter_decode_no_implementation_exception( + self): + is_exception_raised = False + datum = Datum(value=b"dummy", type="bytes") + # when + try: + ActivityTriggerConverter.decode(data=datum, trigger_metadata=None) + except NotImplementedError: + is_exception_raised = True + + # then + self.assertTrue(is_exception_raised) + + def test_enitity_trigger_converter_encode(self): + + data = '{"dummy_key": "dummy_value"}' + + result = EnitityTriggerConverter.encode( + obj=data, expected_type=None) + + self.assertEqual(result.type, "json") + self.assertEqual(result.python_value, {'dummy_key': 'dummy_value'}) diff --git a/tests/test_kafka.py b/tests/test_kafka.py index 7c90e314..6121d7e7 100644 --- a/tests/test_kafka.py +++ b/tests/test_kafka.py @@ -197,6 +197,38 @@ def test_multiple_kafka_triggers_metadata_field(self): sys_dict = json.loads(sys) self.assertEqual(sys_dict['MethodName'], 'KafkaTriggerMany') + def test_kafka_convert_single_event_str(self): + datum = meta.Datum("dummy_body", "string") + result = azf_ka.KafkaConverter.decode( + data=datum, trigger_metadata=None) + + self.assertEqual(result.get_body(), b"dummy_body") + + def test_kafka_convert_single_event_bytes(self): + datum = meta.Datum(b"dummy_body", "bytes") + result = azf_ka.KafkaConverter.decode( + data=datum, trigger_metadata=None) + + self.assertEqual(result.get_body(), b"dummy_body") + + def test_kafka_convert_multiple_event_collection_string(self): + datum = meta.Datum(CollectionString(["dummy_body1", "dummy_body2"]), + "collection_string") + result = azf_ka.KafkaConverter.decode( + data=datum, trigger_metadata=None) + + self.assertEqual([result[0].get_body(), result[1].get_body()], + [b"dummy_body1", b"dummy_body2"]) + + def test_kafka_convert_multiple_event_collection_bytes(self): + datum = meta.Datum(CollectionBytes([b"dummy_body1", b"dummy_body2"]), + "collection_bytes") + result = azf_ka.KafkaConverter.decode( + data=datum, trigger_metadata=None) + + self.assertEqual([result[0].get_body(), result[1].get_body()], + [b"dummy_body1", b"dummy_body2"]) + def _generate_single_kafka_datum(self, datum_type='string'): datum = self.SINGLE_KAFKA_DATAUM if datum_type == 'bytes': diff --git a/tests/test_servicebus.py b/tests/test_servicebus.py index 4f5c2508..258779cd 100644 --- a/tests/test_servicebus.py +++ b/tests/test_servicebus.py @@ -296,6 +296,26 @@ def test_multiple_servicebus_trigger_properties(self): 'x-opt-enqueue-sequence-number': 0 }) + def test_servicebus_message_out_converter_encode_str(self): + + data = "dummy_string" + + result = azf_sb.ServiceBusMessageOutConverter.encode( + obj=data, expected_type=None) + + self.assertEqual(result.type, "string") + self.assertEqual(result.python_value, data) + + def test_servicebus_message_out_converter_encode_bytes(self): + + data = b"dummy_bytes" + + result = azf_sb.ServiceBusMessageOutConverter.encode( + obj=data, expected_type=None) + + self.assertEqual(result.type, "bytes") + self.assertEqual(result.python_value, data) + def _generate_single_servicebus_data(self) -> meta.Datum: return meta.Datum(value=json.dumps({ 'lucky_number': 23