1414import unittest
1515from unittest .mock import Mock , call , patch
1616
17+ from opentelemetry .instrumentation .dependencies import (
18+ DependencyConflict ,
19+ DependencyConflictError ,
20+ )
1721from opentelemetry .sdk ._logs import LoggingHandler
1822from opentelemetry .sdk .resources import Resource
1923
@@ -533,12 +537,10 @@ def test_setup_live_metrics(
533537
534538 @patch ("azure.monitor.opentelemetry._configure._ALL_SUPPORTED_INSTRUMENTED_LIBRARIES" , ("test_instr2" ))
535539 @patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
536- @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
537540 @patch ("azure.monitor.opentelemetry._configure.entry_points" )
538541 def test_setup_instrumentations_lib_not_supported (
539542 self ,
540543 iter_mock ,
541- dep_mock ,
542544 enabled_mock ,
543545 ):
544546 ep_mock = Mock ()
@@ -550,10 +552,8 @@ def test_setup_instrumentations_lib_not_supported(
550552 ep_mock .name = "test_instr1"
551553 ep2_mock .name = "test_instr2"
552554 ep2_mock .load .return_value = instr_class_mock
553- dep_mock .return_value = None
554555 enabled_mock .return_value = True
555556 _setup_instrumentations ({})
556- dep_mock .assert_called_with (ep2_mock .dist )
557557 ep_mock .load .assert_not_called ()
558558 ep2_mock .load .assert_called_once ()
559559 instrumentor_mock .instrument .assert_called_once ()
@@ -579,12 +579,10 @@ def test_setup_instrumentations_additional_azure(
579579 @patch ("azure.monitor.opentelemetry._configure._ALL_SUPPORTED_INSTRUMENTED_LIBRARIES" , ("test_instr" ))
580580 @patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
581581 @patch ("azure.monitor.opentelemetry._configure._logger" )
582- @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
583582 @patch ("azure.monitor.opentelemetry._configure.entry_points" )
584583 def test_setup_instrumentations_conflict (
585584 self ,
586585 iter_mock ,
587- dep_mock ,
588586 logger_mock ,
589587 enabled_mock ,
590588 ):
@@ -595,23 +593,24 @@ def test_setup_instrumentations_conflict(
595593 instr_class_mock .return_value = instrumentor_mock
596594 ep_mock .name = "test_instr"
597595 ep_mock .load .return_value = instr_class_mock
598- dep_mock .return_value = True
596+ instrumentor_mock .instrument .side_effect = DependencyConflictError (
597+ DependencyConflict (
598+ required = "test_instr"
599+ )
600+ )
599601 enabled_mock .return_value = True
600602 _setup_instrumentations ({})
601- dep_mock .assert_called_with (ep_mock .dist )
602- ep_mock .load .assert_not_called ()
603- instrumentor_mock .instrument .assert_not_called ()
603+ ep_mock .load .assert_called_once ()
604+ instrumentor_mock .instrument .assert_called_once ()
604605 logger_mock .debug .assert_called_once ()
605606
606607 @patch ("azure.monitor.opentelemetry._configure._ALL_SUPPORTED_INSTRUMENTED_LIBRARIES" , ("test_instr" ))
607608 @patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
608609 @patch ("azure.monitor.opentelemetry._configure._logger" )
609- @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
610610 @patch ("azure.monitor.opentelemetry._configure.entry_points" )
611611 def test_setup_instrumentations_exception (
612612 self ,
613613 iter_mock ,
614- dep_mock ,
615614 logger_mock ,
616615 enabled_mock ,
617616 ):
@@ -622,10 +621,8 @@ def test_setup_instrumentations_exception(
622621 instr_class_mock .return_value = instrumentor_mock
623622 ep_mock .name = "test_instr"
624623 ep_mock .load .side_effect = Exception ()
625- dep_mock .return_value = None
626624 enabled_mock .return_value = True
627625 _setup_instrumentations ({})
628- dep_mock .assert_called_with (ep_mock .dist )
629626 ep_mock .load .assert_called_once ()
630627 instrumentor_mock .instrument .assert_not_called ()
631628 logger_mock .warning .assert_called_once ()
@@ -635,12 +632,10 @@ def test_setup_instrumentations_exception(
635632 )
636633 @patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
637634 @patch ("azure.monitor.opentelemetry._configure._logger" )
638- @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
639635 @patch ("azure.monitor.opentelemetry._configure.entry_points" )
640636 def test_setup_instrumentations_disabled (
641637 self ,
642638 iter_mock ,
643- dep_mock ,
644639 logger_mock ,
645640 enabled_mock ,
646641 ):
@@ -653,10 +648,8 @@ def test_setup_instrumentations_disabled(
653648 ep_mock .name = "test_instr1"
654649 ep2_mock .name = "test_instr2"
655650 ep2_mock .load .return_value = instr_class_mock
656- dep_mock .return_value = None
657651 enabled_mock .side_effect = [False , True ]
658652 _setup_instrumentations ({})
659- dep_mock .assert_called_with (ep2_mock .dist )
660653 ep_mock .load .assert_not_called ()
661654 ep2_mock .load .assert_called_once ()
662655 instrumentor_mock .instrument .assert_called_once ()
0 commit comments