Skip to content

Commit 6d219b4

Browse files
committed
Update tests to work with setting interval_minutes
1 parent 29ef881 commit 6d219b4

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

openshift_metrics/tests/conftest.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ def mock_metrics_file1():
5959
"cluster_name": "ocp-prod",
6060
"start_date": "2025-09-20",
6161
"end_date": "2025-09-20",
62+
"interval_minutes": "15",
6263
"cpu_metrics": cpu_metrics,
6364
"memory_metrics": memory_metrics,
6465
}
@@ -124,4 +125,19 @@ def mock_metrics_file2():
124125
"end_date": "2025-09-21",
125126
"cpu_metrics": cpu_metrics,
126127
"memory_metrics": memory_metrics,
128+
"interval_minutes": "15",
129+
}
130+
131+
132+
@pytest.fixture
133+
def mock_metrics_file3():
134+
cpu_metrics = []
135+
memory_metrics = []
136+
return {
137+
"cluster_name": "ocp-prod",
138+
"start_date": "2025-09-21",
139+
"end_date": "2025-09-21",
140+
"interval_minutes": "3", # file1 and file2 have 15 minutes
141+
"cpu_metrics": cpu_metrics,
142+
"memory_metrics": memory_metrics,
127143
}

openshift_metrics/tests/test_merge.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ def test_load_and_merge_data(tmp_path, mock_metrics_file1, mock_metrics_file2):
7070
p1.write_text(json.dumps(mock_metrics_file1))
7171
p2.write_text(json.dumps(mock_metrics_file2))
7272

73-
processor = load_and_merge_metrics([p1, p2])
73+
processor = load_and_merge_metrics(2, [p1, p2])
7474

7575
pod1_metrics = processor.merged_data["namespace1"]["pod1"]["metrics"]
7676

@@ -96,3 +96,16 @@ def test_load_metadata(tmp_path, mock_metrics_file1, mock_metrics_file2):
9696
assert metadata.cluster_name == "ocp-prod"
9797
assert metadata.report_start_date == "2025-09-20"
9898
assert metadata.report_end_date == "2025-09-21"
99+
assert metadata.interval_minutes == "15"
100+
101+
102+
def test_load_metadata_failure(tmp_path, mock_metrics_file2, mock_metrics_file3):
103+
"""Test that loading metadata fails when files have different interval_minutes."""
104+
105+
p2 = tmp_path / "file2.json"
106+
p3 = tmp_path / "file3.json"
107+
p2.write_text(json.dumps(mock_metrics_file2))
108+
p3.write_text(json.dumps(mock_metrics_file3))
109+
110+
with pytest.raises(SystemExit):
111+
load_metadata([p2, p3])

0 commit comments

Comments
 (0)