Skip to content

Commit 4a8062a

Browse files
authored
stop using unit tests base classes (#391)
1 parent a04eabc commit 4a8062a

File tree

2 files changed

+43
-38
lines changed

2 files changed

+43
-38
lines changed

django_prometheus/tests/test_django_prometheus.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
#!/usr/bin/env python
2-
import unittest
3-
42
from django_prometheus.utils import PowersOf
53

64

7-
class DjangoPrometheusTest(unittest.TestCase):
5+
class TestDjangoPrometheus:
86
def testPowersOf(self):
97
"""Tests utils.PowersOf."""
108
assert [0, 1, 2, 4, 8] == PowersOf(2, 4)
Lines changed: 42 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
#!/usr/bin/env python
2-
import unittest
32
from operator import itemgetter
43

54
import prometheus_client
5+
import pytest
66

77
from django_prometheus.testutils import (
88
assert_metric_diff,
@@ -16,39 +16,48 @@
1616
)
1717

1818

19-
class PrometheusTestCaseMixinTest(unittest.TestCase):
20-
def setUp(self):
21-
self.registry = prometheus_client.CollectorRegistry()
22-
self.some_gauge = prometheus_client.Gauge("some_gauge", "Some gauge.", registry=self.registry)
23-
self.some_gauge.set(42)
24-
self.some_labelled_gauge = prometheus_client.Gauge(
19+
class TestPrometheusTestCaseMixin:
20+
@pytest.fixture()
21+
def registry(self):
22+
return prometheus_client.CollectorRegistry()
23+
24+
@pytest.fixture(autouse=True)
25+
def some_gauge(self, registry):
26+
some_gauge = prometheus_client.Gauge("some_gauge", "Some gauge.", registry=registry)
27+
some_gauge.set(42)
28+
return some_gauge
29+
30+
@pytest.fixture(autouse=True)
31+
def some_labelled_gauge(self, registry):
32+
some_labelled_gauge = prometheus_client.Gauge(
2533
"some_labelled_gauge",
2634
"Some labelled gauge.",
2735
["labelred", "labelblue"],
28-
registry=self.registry,
36+
registry=registry,
2937
)
30-
self.some_labelled_gauge.labels("pink", "indigo").set(1)
31-
self.some_labelled_gauge.labels("pink", "royal").set(2)
32-
self.some_labelled_gauge.labels("carmin", "indigo").set(3)
33-
self.some_labelled_gauge.labels("carmin", "royal").set(4)
38+
some_labelled_gauge.labels("pink", "indigo").set(1)
39+
some_labelled_gauge.labels("pink", "royal").set(2)
40+
some_labelled_gauge.labels("carmin", "indigo").set(3)
41+
some_labelled_gauge.labels("carmin", "royal").set(4)
42+
return some_labelled_gauge
3443

35-
def test_get_metric(self):
44+
def test_get_metric(self, registry):
3645
"""Tests get_metric."""
37-
assert 42 == get_metric("some_gauge", registry=self.registry)
46+
assert 42 == get_metric("some_gauge", registry=registry)
3847
assert 1 == get_metric(
3948
"some_labelled_gauge",
40-
registry=self.registry,
49+
registry=registry,
4150
labelred="pink",
4251
labelblue="indigo",
4352
)
4453

45-
def test_get_metrics_vector(self):
54+
def test_get_metrics_vector(self, registry):
4655
"""Tests get_metrics_vector."""
47-
vector = get_metrics_vector("some_nonexistent_gauge", registry=self.registry)
56+
vector = get_metrics_vector("some_nonexistent_gauge", registry=registry)
4857
assert [] == vector
49-
vector = get_metrics_vector("some_gauge", registry=self.registry)
58+
vector = get_metrics_vector("some_gauge", registry=registry)
5059
assert [({}, 42)] == vector
51-
vector = get_metrics_vector("some_labelled_gauge", registry=self.registry)
60+
vector = get_metrics_vector("some_labelled_gauge", registry=registry)
5261
assert sorted(
5362
[
5463
({"labelred": "pink", "labelblue": "indigo"}, 1),
@@ -59,57 +68,55 @@ def test_get_metrics_vector(self):
5968
key=itemgetter(1),
6069
) == sorted(vector, key=itemgetter(1))
6170

62-
def test_assert_metric_equal(self):
71+
def test_assert_metric_equal(self, registry):
6372
"""Tests assert_metric_equal."""
6473
# First we test that a scalar metric can be tested.
65-
assert_metric_equal(42, "some_gauge", registry=self.registry)
74+
assert_metric_equal(42, "some_gauge", registry=registry)
6675

67-
assert_metric_not_equal(43, "some_gauge", registry=self.registry)
76+
assert_metric_not_equal(43, "some_gauge", registry=registry)
6877

6978
# Here we test that assert_metric_equal fails on nonexistent gauges.
70-
assert_metric_not_equal(42, "some_nonexistent_gauge", registry=self.registry)
79+
assert_metric_not_equal(42, "some_nonexistent_gauge", registry=registry)
7180

7281
# Here we test that labelled metrics can be tested.
7382
assert_metric_equal(
7483
1,
7584
"some_labelled_gauge",
76-
registry=self.registry,
85+
registry=registry,
7786
labelred="pink",
7887
labelblue="indigo",
7988
)
8089

8190
assert_metric_not_equal(
8291
1,
8392
"some_labelled_gauge",
84-
registry=self.registry,
93+
registry=registry,
8594
labelred="tomato",
8695
labelblue="sky",
8796
)
8897

89-
def test_registry_saving(self):
98+
def test_registry_saving(self, registry, some_gauge, some_labelled_gauge):
9099
"""Tests save_registry and frozen registries operations."""
91-
frozen_registry = save_registry(registry=self.registry)
100+
frozen_registry = save_registry(registry=registry)
92101
# Test that we can manipulate a frozen scalar metric.
93102
assert 42 == get_metric_from_frozen_registry("some_gauge", frozen_registry)
94-
self.some_gauge.set(99)
103+
some_gauge.set(99)
95104
assert 42 == get_metric_from_frozen_registry("some_gauge", frozen_registry)
96-
assert_metric_diff(frozen_registry, 99 - 42, "some_gauge", registry=self.registry)
97-
98-
assert_metric_no_diff(frozen_registry, 1, "some_gauge", registry=self.registry)
99-
105+
assert_metric_diff(frozen_registry, 99 - 42, "some_gauge", registry=registry)
106+
assert_metric_no_diff(frozen_registry, 1, "some_gauge", registry=registry)
100107
# Now test the same thing with a labelled metric.
101108
assert 1 == get_metric_from_frozen_registry(
102109
"some_labelled_gauge", frozen_registry, labelred="pink", labelblue="indigo"
103110
)
104-
self.some_labelled_gauge.labels("pink", "indigo").set(5)
111+
some_labelled_gauge.labels("pink", "indigo").set(5)
105112
assert 1 == get_metric_from_frozen_registry(
106113
"some_labelled_gauge", frozen_registry, labelred="pink", labelblue="indigo"
107114
)
108115
assert_metric_diff(
109116
frozen_registry,
110117
5 - 1,
111118
"some_labelled_gauge",
112-
registry=self.registry,
119+
registry=registry,
113120
labelred="pink",
114121
labelblue="indigo",
115122
)
@@ -118,7 +125,7 @@ def test_registry_saving(self):
118125
frozen_registry,
119126
1,
120127
"some_labelled_gauge",
121-
registry=self.registry,
128+
registry=registry,
122129
labelred="pink",
123130
labelblue="indigo",
124131
)

0 commit comments

Comments
 (0)