14
14
import unittest
15
15
from unittest .mock import Mock , call , patch
16
16
17
- from opentelemetry .instrumentation .dependencies import (
18
- DependencyConflict ,
19
- DependencyConflictError ,
20
- )
21
17
from opentelemetry .sdk ._logs import LoggingHandler
22
18
from opentelemetry .sdk .resources import Resource
23
19
@@ -537,10 +533,12 @@ def test_setup_live_metrics(
537
533
538
534
@patch ("azure.monitor.opentelemetry._configure._ALL_SUPPORTED_INSTRUMENTED_LIBRARIES" , ("test_instr2" ))
539
535
@patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
536
+ @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
540
537
@patch ("azure.monitor.opentelemetry._configure.entry_points" )
541
538
def test_setup_instrumentations_lib_not_supported (
542
539
self ,
543
540
iter_mock ,
541
+ dep_mock ,
544
542
enabled_mock ,
545
543
):
546
544
ep_mock = Mock ()
@@ -552,8 +550,10 @@ def test_setup_instrumentations_lib_not_supported(
552
550
ep_mock .name = "test_instr1"
553
551
ep2_mock .name = "test_instr2"
554
552
ep2_mock .load .return_value = instr_class_mock
553
+ dep_mock .return_value = None
555
554
enabled_mock .return_value = True
556
555
_setup_instrumentations ({})
556
+ dep_mock .assert_called_with (ep2_mock .dist )
557
557
ep_mock .load .assert_not_called ()
558
558
ep2_mock .load .assert_called_once ()
559
559
instrumentor_mock .instrument .assert_called_once ()
@@ -579,10 +579,12 @@ def test_setup_instrumentations_additional_azure(
579
579
@patch ("azure.monitor.opentelemetry._configure._ALL_SUPPORTED_INSTRUMENTED_LIBRARIES" , ("test_instr" ))
580
580
@patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
581
581
@patch ("azure.monitor.opentelemetry._configure._logger" )
582
+ @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
582
583
@patch ("azure.monitor.opentelemetry._configure.entry_points" )
583
584
def test_setup_instrumentations_conflict (
584
585
self ,
585
586
iter_mock ,
587
+ dep_mock ,
586
588
logger_mock ,
587
589
enabled_mock ,
588
590
):
@@ -593,24 +595,23 @@ def test_setup_instrumentations_conflict(
593
595
instr_class_mock .return_value = instrumentor_mock
594
596
ep_mock .name = "test_instr"
595
597
ep_mock .load .return_value = instr_class_mock
596
- instrumentor_mock .instrument .side_effect = DependencyConflictError (
597
- DependencyConflict (
598
- required = "test_instr"
599
- )
600
- )
598
+ dep_mock .return_value = True
601
599
enabled_mock .return_value = True
602
600
_setup_instrumentations ({})
603
- ep_mock .load .assert_called_once ()
604
- instrumentor_mock .instrument .assert_called_once ()
601
+ dep_mock .assert_called_with (ep_mock .dist )
602
+ ep_mock .load .assert_not_called ()
603
+ instrumentor_mock .instrument .assert_not_called ()
605
604
logger_mock .debug .assert_called_once ()
606
605
607
606
@patch ("azure.monitor.opentelemetry._configure._ALL_SUPPORTED_INSTRUMENTED_LIBRARIES" , ("test_instr" ))
608
607
@patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
609
608
@patch ("azure.monitor.opentelemetry._configure._logger" )
609
+ @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
610
610
@patch ("azure.monitor.opentelemetry._configure.entry_points" )
611
611
def test_setup_instrumentations_exception (
612
612
self ,
613
613
iter_mock ,
614
+ dep_mock ,
614
615
logger_mock ,
615
616
enabled_mock ,
616
617
):
@@ -621,8 +622,10 @@ def test_setup_instrumentations_exception(
621
622
instr_class_mock .return_value = instrumentor_mock
622
623
ep_mock .name = "test_instr"
623
624
ep_mock .load .side_effect = Exception ()
625
+ dep_mock .return_value = None
624
626
enabled_mock .return_value = True
625
627
_setup_instrumentations ({})
628
+ dep_mock .assert_called_with (ep_mock .dist )
626
629
ep_mock .load .assert_called_once ()
627
630
instrumentor_mock .instrument .assert_not_called ()
628
631
logger_mock .warning .assert_called_once ()
@@ -632,10 +635,12 @@ def test_setup_instrumentations_exception(
632
635
)
633
636
@patch ("azure.monitor.opentelemetry._configure._is_instrumentation_enabled" )
634
637
@patch ("azure.monitor.opentelemetry._configure._logger" )
638
+ @patch ("azure.monitor.opentelemetry._configure.get_dist_dependency_conflicts" )
635
639
@patch ("azure.monitor.opentelemetry._configure.entry_points" )
636
640
def test_setup_instrumentations_disabled (
637
641
self ,
638
642
iter_mock ,
643
+ dep_mock ,
639
644
logger_mock ,
640
645
enabled_mock ,
641
646
):
@@ -648,8 +653,10 @@ def test_setup_instrumentations_disabled(
648
653
ep_mock .name = "test_instr1"
649
654
ep2_mock .name = "test_instr2"
650
655
ep2_mock .load .return_value = instr_class_mock
656
+ dep_mock .return_value = None
651
657
enabled_mock .side_effect = [False , True ]
652
658
_setup_instrumentations ({})
659
+ dep_mock .assert_called_with (ep2_mock .dist )
653
660
ep_mock .load .assert_not_called ()
654
661
ep2_mock .load .assert_called_once ()
655
662
instrumentor_mock .instrument .assert_called_once ()
0 commit comments