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