|
1 | | -import os |
2 | 1 | import subprocess |
3 | | -from pathlib import Path |
4 | 2 |
|
5 | 3 | import django |
6 | 4 | import pytest |
@@ -111,32 +109,43 @@ def test_main__healthcheck_http__server_invalid_response__runs_expected( |
111 | 109 | main(argv) |
112 | 110 |
|
113 | 111 |
|
114 | | -def test_main__prometheus_multiproc_remove_dir_on_exit_default__expected( |
| 112 | +def test_main__prometheus_multiproc_remove_dir_on_start_default__expected( |
115 | 113 | monkeypatch: pytest.MonkeyPatch, |
| 114 | + fs: FakeFilesystem, |
116 | 115 | ) -> None: |
117 | 116 | # Given |
118 | 117 | monkeypatch.delenv("PROMETHEUS_MULTIPROC_DIR_KEEP", raising=False) |
119 | 118 |
|
| 119 | + fs.create_file( |
| 120 | + "/tmp/flagsmith-prometheus/some_metric_file.db", |
| 121 | + create_missing_dirs=True, |
| 122 | + ) |
| 123 | + |
120 | 124 | # When |
121 | 125 | main(["flagsmith"]) |
122 | 126 |
|
123 | 127 | # Then |
124 | | - assert not Path(os.environ["PROMETHEUS_MULTIPROC_DIR"]).exists() |
| 128 | + assert not fs.exists("/tmp/flagsmith-prometheus/some_metric_file.db") |
125 | 129 |
|
126 | 130 |
|
127 | | -def test_main__prometheus_multiproc_remove_dir_on_exit_true__expected( |
| 131 | +def test_main__prometheus_multiproc_remove_dir_on_start_true__expected( |
128 | 132 | monkeypatch: pytest.MonkeyPatch, |
129 | 133 | fs: FakeFilesystem, |
130 | 134 | ) -> None: |
131 | 135 | # Given |
132 | | - monkeypatch.delenv("PROMETHEUS_MULTIPROC_DIR") |
| 136 | + monkeypatch.delenv("PROMETHEUS_MULTIPROC_DIR", raising=False) |
133 | 137 | monkeypatch.setenv("PROMETHEUS_MULTIPROC_DIR_KEEP", "true") |
134 | 138 |
|
| 139 | + fs.create_file( |
| 140 | + "/tmp/flagsmith-prometheus/some_metric_file.db", |
| 141 | + create_missing_dirs=True, |
| 142 | + ) |
| 143 | + |
135 | 144 | # When |
136 | 145 | main(["flagsmith"]) |
137 | 146 |
|
138 | 147 | # Then |
139 | | - assert Path(os.environ["PROMETHEUS_MULTIPROC_DIR"]).exists() |
| 148 | + assert fs.exists("/tmp/flagsmith-prometheus/some_metric_file.db") |
140 | 149 |
|
141 | 150 |
|
142 | 151 | def test_main__no_django_configured__expected_0( |
|
0 commit comments