@@ -117,23 +117,22 @@ class ProviderWithIncludeFilter(GenericProvider):
117117)
118118def test_provider_falls_back_to_openai (provider_class ):
119119 """Test that OpenAI parser is used as last resort when all other processors fail."""
120- os .environ ["PARSER_OPENAI_API_KEY" ] = "some_api_key"
121- data = NotificationData .init_from_raw ("text/plain" , b"fake data" )
122- data .add_data_part ("text/html" , b"other data" )
123-
124- provider = provider_class ()
125- original_processor_count = len (provider ._processors ) # pylint: disable=protected-access
126-
127- with patch ("circuit_maintenance_parser.processor.GenericProcessor.process" ) as mock_processor :
128- # All native processors fail, then OpenAI processor succeeds
129- mock_processor .side_effect = [ProcessorError ] * original_processor_count + [[{"a" : "b" }]]
130- provider .get_maintenances (data )
131- # Native processors + 1 OpenAI call
132- assert mock_processor .call_count == original_processor_count + 1
133-
134- # OpenAI processor should NOT be appended to the provider's processor list
135- assert len (provider ._processors ) == original_processor_count # pylint: disable=protected-access
136- os .environ .pop ("PARSER_OPENAI_API_KEY" , None )
120+ with patch .dict (os .environ , {"PARSER_OPENAI_API_KEY" : "some_api_key" }):
121+ data = NotificationData .init_from_raw ("text/plain" , b"fake data" )
122+ data .add_data_part ("text/html" , b"other data" )
123+
124+ provider = provider_class ()
125+ original_processor_count = len (provider ._processors ) # pylint: disable=protected-access
126+
127+ with patch ("circuit_maintenance_parser.processor.GenericProcessor.process" ) as mock_processor :
128+ # All native processors fail, then OpenAI processor succeeds
129+ mock_processor .side_effect = [ProcessorError ] * original_processor_count + [[{"a" : "b" }]]
130+ provider .get_maintenances (data )
131+ # Native processors + 1 OpenAI call
132+ assert mock_processor .call_count == original_processor_count + 1
133+
134+ # OpenAI processor should NOT be appended to the provider's processor list
135+ assert len (provider ._processors ) == original_processor_count # pylint: disable=protected-access
137136
138137
139138def test_provider_does_not_use_openai_when_native_succeeds ():
0 commit comments