|
1 | 1 | import sys |
2 | 2 | import os |
3 | 3 | from unittest.mock import patch, MagicMock |
| 4 | +from src.backend.otlp_tracing import configure_oltp_tracing # Import directly since it's in backend |
4 | 5 |
|
5 | 6 | # Add the backend directory to the Python path |
6 | 7 | sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))) |
7 | 8 |
|
8 | | -from otlp_tracing import configure_oltp_tracing # Import directly since it's in backend |
9 | | - |
10 | | - |
11 | | -@patch("otlp_tracing.OTLPSpanExporter") |
12 | | -@patch("otlp_tracing.BatchSpanProcessor") |
13 | | -@patch("otlp_tracing.TracerProvider") |
14 | | -@patch("otlp_tracing.trace") |
15 | | -@patch("otlp_tracing.Resource") |
| 9 | +@patch("src.backend.otlp_tracing.TracerProvider") |
| 10 | +@patch("src.backend.otlp_tracing.OTLPSpanExporter") |
| 11 | +@patch("src.backend.otlp_tracing.Resource") |
16 | 12 | def test_configure_oltp_tracing( |
17 | 13 | mock_resource, |
18 | | - mock_trace, |
19 | | - mock_tracer_provider, |
20 | | - mock_batch_processor, |
21 | 14 | mock_otlp_exporter, |
| 15 | + mock_tracer_provider, |
22 | 16 | ): |
23 | | - # Mock objects |
24 | | - mock_resource.return_value = {"service.name": "macwe"} |
| 17 | + # Mock the Resource |
| 18 | + mock_resource_instance = MagicMock() |
| 19 | + mock_resource.return_value = mock_resource_instance |
| 20 | + |
| 21 | + # Mock TracerProvider |
25 | 22 | mock_tracer_provider_instance = MagicMock() |
26 | 23 | mock_tracer_provider.return_value = mock_tracer_provider_instance |
27 | | - mock_batch_processor.return_value = MagicMock() |
28 | | - mock_otlp_exporter.return_value = MagicMock() |
| 24 | + |
| 25 | + # Mock OTLPSpanExporter |
| 26 | + mock_otlp_exporter_instance = MagicMock() |
| 27 | + mock_otlp_exporter.return_value = mock_otlp_exporter_instance |
29 | 28 |
|
30 | 29 | # Call the function |
31 | 30 | endpoint = "mock-endpoint" |
32 | 31 | tracer_provider = configure_oltp_tracing(endpoint=endpoint) |
33 | 32 |
|
34 | 33 | # Assertions |
35 | | - mock_tracer_provider.assert_called_once_with(resource={"service.name": "macwe"}) |
36 | | - mock_otlp_exporter.assert_called_once() |
37 | | - mock_batch_processor.assert_called_once_with(mock_otlp_exporter.return_value) |
38 | | - mock_tracer_provider_instance.add_span_processor.assert_called_once_with( |
39 | | - mock_batch_processor.return_value |
40 | | - ) |
41 | | - mock_trace.set_tracer_provider.assert_called_once_with( |
42 | | - mock_tracer_provider_instance |
43 | | - ) |
44 | | - |
| 34 | + mock_tracer_provider.assert_called_once_with(resource=mock_resource_instance) |
| 35 | + mock_otlp_exporter.assert_called_once_with() |
| 36 | + mock_tracer_provider_instance.add_span_processor.assert_called_once() |
45 | 37 | assert tracer_provider == mock_tracer_provider_instance |
0 commit comments