Skip to content

Commit f5707cd

Browse files
committed
Updates pattern for rest of the environment checks.
1 parent 9a9724a commit f5707cd

1 file changed

Lines changed: 29 additions & 33 deletions

File tree

tests/unit/test_providers.py

Lines changed: 29 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -137,55 +137,51 @@ def test_provider_falls_back_to_openai(provider_class):
137137

138138
def test_provider_does_not_use_openai_when_native_succeeds():
139139
"""Test that OpenAI parser is not invoked when a native processor succeeds."""
140-
os.environ["PARSER_OPENAI_API_KEY"] = "some_api_key"
141-
data = NotificationData.init_from_raw("text/plain", b"fake data")
142-
143-
provider = GenericProvider()
140+
with patch.dict(os.environ, {"PARSER_OPENAI_API_KEY": "some_api_key"}):
141+
data = NotificationData.init_from_raw("text/plain", b"fake data")
144142

145-
with patch("circuit_maintenance_parser.processor.GenericProcessor.process") as mock_processor:
146-
mock_processor.return_value = [{"a": "b"}]
147-
provider.get_maintenances(data)
148-
# Only the native processor should be called
149-
assert mock_processor.call_count == 1
143+
provider = GenericProvider()
150144

151-
os.environ.pop("PARSER_OPENAI_API_KEY", None)
145+
with patch("circuit_maintenance_parser.processor.GenericProcessor.process") as mock_processor:
146+
mock_processor.return_value = [{"a": "b"}]
147+
provider.get_maintenances(data)
148+
# Only the native processor should be called
149+
assert mock_processor.call_count == 1
152150

153151

154152
def test_provider_data_not_mutated_when_native_succeeds():
155153
"""Test that add_subject_to_text is not called when native processors succeed."""
156-
os.environ["PARSER_OPENAI_API_KEY"] = "some_api_key"
157-
data = NotificationData.init_from_raw("text/plain", b"fake data")
158-
data.add_data_part("email-header-subject", b"Test Subject")
154+
with patch.dict(os.environ, {"PARSER_OPENAI_API_KEY": "some_api_key"}):
155+
data = NotificationData.init_from_raw("text/plain", b"fake data")
156+
data.add_data_part("email-header-subject", b"Test Subject")
159157

160-
original_content = data.data_parts[0].content
161-
provider = GenericProvider()
158+
original_content = data.data_parts[0].content
159+
provider = GenericProvider()
162160

163-
with patch("circuit_maintenance_parser.processor.GenericProcessor.process") as mock_processor:
164-
mock_processor.return_value = [{"a": "b"}]
165-
provider.get_maintenances(data)
161+
with patch("circuit_maintenance_parser.processor.GenericProcessor.process") as mock_processor:
162+
mock_processor.return_value = [{"a": "b"}]
163+
provider.get_maintenances(data)
166164

167-
# Data should not have been mutated since native processor succeeded
168-
assert data.data_parts[0].content == original_content
169-
os.environ.pop("PARSER_OPENAI_API_KEY", None)
165+
# Data should not have been mutated since native processor succeeded
166+
assert data.data_parts[0].content == original_content
170167

171168

172169
def test_provider_no_repeated_append_on_multiple_calls():
173170
"""Test that calling get_maintenances multiple times doesn't grow the processor list."""
174-
os.environ["PARSER_OPENAI_API_KEY"] = "some_api_key"
175-
data = NotificationData.init_from_raw("text/plain", b"fake data")
171+
with patch.dict(os.environ, {"PARSER_OPENAI_API_KEY": "some_api_key"}):
172+
data = NotificationData.init_from_raw("text/plain", b"fake data")
176173

177-
provider = GenericProvider()
178-
original_processor_count = len(provider._processors) # pylint: disable=protected-access
174+
provider = GenericProvider()
175+
original_processor_count = len(provider._processors) # pylint: disable=protected-access
179176

180-
with patch("circuit_maintenance_parser.processor.GenericProcessor.process") as mock_processor:
181-
mock_processor.return_value = [{"a": "b"}]
182-
provider.get_maintenances(data)
183-
provider.get_maintenances(data)
184-
provider.get_maintenances(data)
177+
with patch("circuit_maintenance_parser.processor.GenericProcessor.process") as mock_processor:
178+
mock_processor.return_value = [{"a": "b"}]
179+
provider.get_maintenances(data)
180+
provider.get_maintenances(data)
181+
provider.get_maintenances(data)
185182

186-
# Processor list should never grow
187-
assert len(provider._processors) == original_processor_count # pylint: disable=protected-access
188-
os.environ.pop("PARSER_OPENAI_API_KEY", None)
183+
# Processor list should never grow
184+
assert len(provider._processors) == original_processor_count # pylint: disable=protected-access
189185

190186

191187
def test_add_subject_to_text_appends_subject_to_text_parts():

0 commit comments

Comments
 (0)