Skip to content

Commit e8e468b

Browse files
committed
fixup imports to use library.collectors.{controller,others}.*
1 parent 6003e32 commit e8e468b

File tree

4 files changed

+37
-39
lines changed

4 files changed

+37
-39
lines changed

metrics_utility/automation_controller_billing/collectors.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@
99
from metrics_utility.base import register
1010
from metrics_utility.base.utils import get_max_gather_period_days, get_optional_collectors
1111
from metrics_utility.exceptions import MetricsException, MissingRequiredEnvVar
12-
from metrics_utility.library.collectors import config as config_collector
13-
from metrics_utility.library.collectors import execution_environments as execution_environments_collector
14-
from metrics_utility.library.collectors import job_host_summary as job_host_summary_collector
15-
from metrics_utility.library.collectors import job_host_summary_service as job_host_summary_service_collector
16-
from metrics_utility.library.collectors import main_host as main_host_collector
17-
from metrics_utility.library.collectors import main_indirectmanagednodeaudit as main_indirectmanagednodeaudit_collector
18-
from metrics_utility.library.collectors import main_jobevent as main_jobevent_collector
19-
from metrics_utility.library.collectors import main_jobevent_service as main_jobevent_service_collector
20-
from metrics_utility.library.collectors import total_workers_vcpu as total_workers_vcpu_collector
21-
from metrics_utility.library.collectors import unified_jobs as unified_jobs_collector
12+
from metrics_utility.library.collectors.controller import config as config_collector
13+
from metrics_utility.library.collectors.controller import execution_environments as execution_environments_collector
14+
from metrics_utility.library.collectors.controller import job_host_summary as job_host_summary_collector
15+
from metrics_utility.library.collectors.controller import job_host_summary_service as job_host_summary_service_collector
16+
from metrics_utility.library.collectors.controller import main_host as main_host_collector
17+
from metrics_utility.library.collectors.controller import main_indirectmanagednodeaudit as main_indirectmanagednodeaudit_collector
18+
from metrics_utility.library.collectors.controller import main_jobevent as main_jobevent_collector
19+
from metrics_utility.library.collectors.controller import main_jobevent_service as main_jobevent_service_collector
20+
from metrics_utility.library.collectors.controller import unified_jobs as unified_jobs_collector
21+
from metrics_utility.library.collectors.others import total_workers_vcpu as total_workers_vcpu_collector
2222
from metrics_utility.logger import logger
2323

2424

metrics_utility/test/gather/test_total_workers_vcpu.py

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
from metrics_utility.automation_controller_billing.collectors import total_workers_vcpu
99
from metrics_utility.exceptions import MissingRequiredEnvVar
10-
from metrics_utility.library.collectors.total_workers_vcpu import get_hour_boundaries
10+
from metrics_utility.library.collectors.others.total_workers_vcpu import get_hour_boundaries
1111
from metrics_utility.test.util import temporary_env
1212

1313

@@ -39,7 +39,7 @@ def test_returns_hardcoded_value_when_usage_based_billing_disabled(self):
3939
"""Test that the function returns hardcoded value when METRICS_UTILITY_USAGE_BASED_METERING_ENABLED is not set or false (default behavior)."""
4040
with (
4141
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
42-
patch('metrics_utility.library.collectors.total_workers_vcpu.logger') as mock_logger,
42+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.logger') as mock_logger,
4343
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
4444
patch('builtins.open', mock_open(read_data='fake-token')),
4545
):
@@ -75,7 +75,7 @@ def test_usage_based_billing_enabled_case_insensitive(self):
7575
"""Test that METRICS_UTILITY_USAGE_BASED_METERING_ENABLED is case insensitive."""
7676
with (
7777
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
78-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
78+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
7979
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
8080
patch('builtins.open', mock_open(read_data='fake-token')),
8181
):
@@ -102,10 +102,10 @@ def test_uses_default_prometheus_url_when_not_set(self):
102102
"""Test that the function uses default Prometheus URL when METRICS_UTILITY_PROMETHEUS_URL is not set."""
103103
with (
104104
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
105-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
106-
patch('metrics_utility.library.collectors.total_workers_vcpu.get_total_workers_cpu') as mock_get_cpu,
107-
patch('metrics_utility.library.collectors.total_workers_vcpu.get_cpu_timeline') as mock_get_timeline,
108-
patch('metrics_utility.library.collectors.total_workers_vcpu.logger') as mock_logger,
105+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
106+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.get_total_workers_cpu') as mock_get_cpu,
107+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.get_cpu_timeline') as mock_get_timeline,
108+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.logger') as mock_logger,
109109
patch('metrics_utility.automation_controller_billing.collectors.logger') as mock_collectors_logger,
110110
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
111111
patch('builtins.open', mock_open(read_data='fake-token')),
@@ -172,7 +172,7 @@ def test_prometheus_client_creation_failure_raises_exception(self):
172172
"""Test that PrometheusClient creation failure raises an exception."""
173173
with (
174174
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
175-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
175+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
176176
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
177177
patch('builtins.open', mock_open(read_data='fake-token')),
178178
):
@@ -195,7 +195,7 @@ def test_prometheus_query_failure_raises_exception(self):
195195
"""Test that Prometheus query failure raises an exception."""
196196
with (
197197
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
198-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
198+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
199199
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
200200
patch('builtins.open', mock_open(read_data='fake-token')),
201201
):
@@ -222,8 +222,8 @@ def test_prometheus_query_returns_none_when_no_data_available(self):
222222
"""Test that the function returns None when Prometheus query returns None (no data available)."""
223223
with (
224224
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
225-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
226-
patch('metrics_utility.library.collectors.total_workers_vcpu.logger') as mock_logger,
225+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
226+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.logger') as mock_logger,
227227
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
228228
patch('builtins.open', mock_open(read_data='fake-token')),
229229
):
@@ -254,8 +254,8 @@ def test_successful_prometheus_query_with_vcpu_calculation(self):
254254
"""Test successful Prometheus query with vCPU calculation."""
255255
with (
256256
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
257-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
258-
patch('metrics_utility.library.collectors.total_workers_vcpu.logger') as mock_logger,
257+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
258+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.logger') as mock_logger,
259259
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
260260
patch('builtins.open', mock_open(read_data='fake-token')),
261261
):
@@ -303,7 +303,7 @@ def test_prometheus_client_initialized_correctly(self):
303303
"""Test that PrometheusClient is initialized correctly."""
304304
with (
305305
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
306-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
306+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
307307
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
308308
patch('builtins.open', mock_open(read_data='fake-token')),
309309
):
@@ -334,8 +334,8 @@ def test_prometheus_query_uses_correct_promql_with_hour_boundaries(self):
334334
"""Test that the Prometheus query uses correct PromQL with hour boundaries."""
335335
with (
336336
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
337-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
338-
patch('metrics_utility.library.collectors.total_workers_vcpu.datetime') as mock_datetime,
337+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
338+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.datetime') as mock_datetime,
339339
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
340340
patch('builtins.open', mock_open(read_data='fake-token')),
341341
):
@@ -375,7 +375,7 @@ def test_vcpu_value_converted_to_int(self):
375375
"""Test that vCPU values from Prometheus (floats) are properly converted to integers."""
376376
with (
377377
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
378-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
378+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
379379
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
380380
patch('builtins.open', mock_open(read_data='fake-token')),
381381
):
@@ -398,7 +398,7 @@ def test_vcpu_value_converted_to_int(self):
398398
assert result['total_workers_vcpu'] == 15 # Should be truncated to int
399399
assert isinstance(result['total_workers_vcpu'], int)
400400

401-
@patch('metrics_utility.library.collectors.total_workers_vcpu.datetime')
401+
@patch('metrics_utility.library.collectors.others.total_workers_vcpu.datetime')
402402
def test_timestamp_in_output_with_hour_boundaries(self, mock_datetime):
403403
"""Test that the function includes proper timestamp based on hour boundaries."""
404404
# Mock the datetime.now() call
@@ -409,8 +409,8 @@ def test_timestamp_in_output_with_hour_boundaries(self, mock_datetime):
409409

410410
with (
411411
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
412-
patch('metrics_utility.library.collectors.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
413-
patch('metrics_utility.library.collectors.total_workers_vcpu.logger') as mock_logger,
412+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.PrometheusClient') as mock_prom_client_class,
413+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.logger') as mock_logger,
414414
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
415415
patch('builtins.open', mock_open(read_data='fake-token')),
416416
):
@@ -451,7 +451,7 @@ def test_usage_based_billing_disabled_unset_returns_hardcoded_value(self):
451451
"""Test that when METRICS_UTILITY_USAGE_BASED_METERING_ENABLED is unset, it returns hardcoded value."""
452452
with (
453453
patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors') as mock_get,
454-
patch('metrics_utility.library.collectors.total_workers_vcpu.logger') as mock_logger,
454+
patch('metrics_utility.library.collectors.others.total_workers_vcpu.logger') as mock_logger,
455455
patch('metrics_utility.automation_controller_billing.collectors.os.path.exists', return_value=True),
456456
patch('builtins.open', mock_open(read_data='fake-token')),
457457
):

metrics_utility/test/test_collectors.py

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,13 @@
22

33
from django.db.utils import ProgrammingError
44

5-
from metrics_utility.automation_controller_billing.collectors import (
6-
main_indirectmanagednodeaudit_table,
7-
)
5+
from metrics_utility.automation_controller_billing.collectors import main_indirectmanagednodeaudit_table
86

97

108
class TestMainIndirectManagedNodeAuditTable:
119
"""Test cases for the main_indirectmanagednodeaudit_table function"""
1210

13-
@patch('metrics_utility.library.collectors.main_indirectmanagednodeaudit.copy_table')
11+
@patch('metrics_utility.library.collectors.controller.main_indirectmanagednodeaudit.copy_table')
1412
@patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors')
1513
def test_main_indirectmanagednodeaudit_table_success(self, mock_get_optional_collectors, mock_copy_table):
1614
"""Test successful execution when table exists"""
@@ -46,7 +44,7 @@ def test_main_indirectmanagednodeaudit_table_not_in_optional_collectors(self, mo
4644
assert result is None
4745

4846
@patch('metrics_utility.automation_controller_billing.collectors.logger')
49-
@patch('metrics_utility.library.collectors.main_indirectmanagednodeaudit.copy_table')
47+
@patch('metrics_utility.library.collectors.controller.main_indirectmanagednodeaudit.copy_table')
5048
@patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors')
5149
def test_main_indirectmanagednodeaudit_table_programming_error(self, mock_get_optional_collectors, mock_copy_table, mock_logger):
5250
"""Test graceful handling when table doesn't exist (ProgrammingError)"""
@@ -71,7 +69,7 @@ def test_main_indirectmanagednodeaudit_table_programming_error(self, mock_get_op
7169
assert 'Falling back to behavior without indirect managed node audit data.' in warning_call[0][0]
7270
assert warning_call[0][1] is mock_copy_table.side_effect
7371

74-
@patch('metrics_utility.library.collectors.main_indirectmanagednodeaudit.copy_table')
72+
@patch('metrics_utility.library.collectors.controller.main_indirectmanagednodeaudit.copy_table')
7573
@patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors')
7674
def test_main_indirectmanagednodeaudit_table_query_format(self, mock_get_optional_collectors, mock_copy_table):
7775
"""Test that the SQL query contains expected elements"""
@@ -104,7 +102,7 @@ def test_main_indirectmanagednodeaudit_table_query_format(self, mock_get_optiona
104102
assert '2024-01-02T00:00:00' in query
105103

106104
@patch('metrics_utility.automation_controller_billing.collectors.logger')
107-
@patch('metrics_utility.library.collectors.main_indirectmanagednodeaudit.copy_table')
105+
@patch('metrics_utility.library.collectors.controller.main_indirectmanagednodeaudit.copy_table')
108106
@patch('metrics_utility.automation_controller_billing.collectors.get_optional_collectors')
109107
def test_main_indirectmanagednodeaudit_table_logs_specific_error(self, mock_get_optional_collectors, mock_copy_table, mock_logger):
110108
"""Test that the specific error message is logged correctly"""

metrics_utility/test/test_prometheus_client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
import pytest
1313
import requests
1414

15-
from metrics_utility.library.collectors.prometheus_client import PrometheusClient
15+
from metrics_utility.library.collectors.others.prometheus_client import PrometheusClient
1616

1717

1818
class TestPrometheusClient:

0 commit comments

Comments
 (0)