Skip to content

Commit 87f7528

Browse files
committed
single pass for num_discovered_tests
1 parent 17c7886 commit 87f7528

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

codeflash/discovery/discover_unit_tests.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -317,16 +317,15 @@ def discover_unit_tests(
317317
if file_to_funcs_to_optimize:
318318
functions_to_optimize = [func for funcs_list in file_to_funcs_to_optimize.values() for func in funcs_list]
319319

320-
function_to_tests = strategy(cfg, discover_only_these_tests, functions_to_optimize)
321-
num_discovered_tests = sum([len(value) for value in function_to_tests.values()])
320+
function_to_tests, num_discovered_tests = strategy(cfg, discover_only_these_tests, functions_to_optimize)
322321
return function_to_tests, num_discovered_tests
323322

324323

325324
def discover_tests_pytest(
326325
cfg: TestConfig,
327326
discover_only_these_tests: list[Path] | None = None,
328327
functions_to_optimize: list[FunctionToOptimize] | None = None,
329-
) -> dict[str, set[FunctionCalledInTest]]:
328+
) -> tuple[dict[str, set[FunctionCalledInTest]], int]:
330329
tests_root = cfg.tests_root
331330
project_root = cfg.project_root_path
332331

@@ -402,7 +401,7 @@ def discover_tests_unittest(
402401
cfg: TestConfig,
403402
discover_only_these_tests: list[str] | None = None,
404403
functions_to_optimize: list[FunctionToOptimize] | None = None,
405-
) -> dict[str, set[FunctionCalledInTest]]:
404+
) -> tuple[dict[str, set[FunctionCalledInTest]], int]:
406405
tests_root: Path = cfg.tests_root
407406
loader: unittest.TestLoader = unittest.TestLoader()
408407
tests: unittest.TestSuite = loader.discover(str(tests_root))
@@ -469,7 +468,7 @@ def process_test_files(
469468
file_to_test_map: dict[Path, list[TestsInFile]],
470469
cfg: TestConfig,
471470
functions_to_optimize: list[FunctionToOptimize] | None = None,
472-
) -> dict[str, set[FunctionCalledInTest]]:
471+
) -> tuple[dict[str, set[FunctionCalledInTest]], int]:
473472
import jedi
474473

475474
project_root_path = cfg.project_root_path
@@ -492,6 +491,7 @@ def process_test_files(
492491
logger.debug(f"Import analysis results: {len(import_results)} files analyzed")
493492

494493
function_to_test_map = defaultdict(set)
494+
num_discovered_tests = 0
495495
jedi_project = jedi.Project(path=project_root_path)
496496

497497
with test_files_progress_bar(total=len(file_to_test_map), description="Processing test files") as (
@@ -639,7 +639,8 @@ def process_test_files(
639639
position=CodePosition(line_no=name.line, col_no=name.column),
640640
)
641641
)
642+
num_discovered_tests += 1
642643

643644
progress.advance(task_id)
644645

645-
return dict(function_to_test_map)
646+
return dict(function_to_test_map), num_discovered_tests

0 commit comments

Comments
 (0)