55)
66from werkzeug .exceptions import NotFound
77
8- from tests .fixtures .services .tracer_analysis_service_fixture import (
8+ from tests .fixtures .services .tracer_analysis_service import (
99 sample_tracer_data ,
1010 sample_expected_segment ,
11- get_tracer ,
12- get_existing_analysis ,
13- parse_tracer_output ,
14- trigger_ai_analysis ,
11+ mock_get_tracer ,
12+ mock_get_existing_analysis ,
13+ mock_parse_tracer_output ,
14+ mock_trigger_ai_analysis ,
1515)
1616
1717service = TracerAnalysisService ()
18+ country_id = "us"
19+ household_id = "71424"
20+ policy_id = "2"
21+ target_variable = "takes_up_snap_if_eligible"
1822
1923
2024class TestExecuteAnalysis :
2125 def test_execute_analysis_static (
22- self , get_tracer , parse_tracer_output , get_existing_analysis
26+ self ,
27+ mock_get_tracer ,
28+ mock_parse_tracer_output ,
29+ mock_get_existing_analysis ,
2330 ):
2431 """
2532 GIVEN a valid tracer data and an expected parsed segment (included as fixture),
@@ -29,33 +36,34 @@ def test_execute_analysis_static(
2936 """
3037
3138 analysis , analysis_type = service .execute_analysis (
32- "us" , "71424" , "2" , "market_income"
39+ country_id , household_id , policy_id , target_variable
3340 )
3441
3542 assert analysis == "Existing static analysis"
3643 assert analysis_type == "static"
3744
3845 def test_execute_analysis_streaming (
3946 self ,
40- get_tracer ,
41- parse_tracer_output ,
42- get_existing_analysis ,
43- trigger_ai_analysis ,
47+ mock_get_tracer ,
48+ mock_parse_tracer_output ,
49+ mock_get_existing_analysis ,
50+ mock_trigger_ai_analysis ,
4451 ):
4552 """
4653 GIVEN a valid tracer data and an expected parsed segment,
4754 AND get_existing_analysis returns None,
48- WHEN execute_analysis is called " ,
55+ WHEN execute_analysis is called,
4956 THEN trigger_ai_analysis is called and returns a generator with the "streaming" flag.
5057 """
5158
5259 # When existing analysis value is None
53- get_existing_analysis .return_value = None
60+ mock_get_existing_analysis .return_value = None
5461
5562 analysis , analysis_type = service .execute_analysis (
56- "us" , "71424" , "2" , "market_income"
63+ country_id , household_id , policy_id , target_variable
5764 )
5865
66+ expected_streaming_output = ["stream chunk 1" , "stream chunk 2" ]
5967 streaming_output = list (analysis )
60- assert streaming_output == [ "stream chunk 1" , "stream chunk 2" ]
68+ assert streaming_output == expected_streaming_output
6169 assert analysis_type == "streaming"
0 commit comments