Skip to content

Commit f2f7b5e

Browse files
test: fix test_determine_language_mixed (#681)
1 parent bef96fd commit f2f7b5e

File tree

1 file changed

+22
-8
lines changed

1 file changed

+22
-8
lines changed

tests/unit/codegen/git/utils/test_language_detection.py

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import pytest
2+
13
from codegen.git.utils.language import determine_project_language
24
from codegen.sdk.codebase.factory.get_session import get_codebase_session
35
from codegen.shared.enums.programming_language import ProgrammingLanguage
@@ -43,14 +45,26 @@ def test_determine_language_package_json(tmpdir) -> None:
4345
assert determine_project_language(tmpdir, strategy="most_common") == ProgrammingLanguage.OTHER
4446

4547

46-
def test_determine_language_mixed(tmpdir) -> None:
47-
with get_codebase_session(tmpdir=tmpdir, files={"file1.py": "", "file2.ts": "", "file3.txt": ""}, programming_language=ProgrammingLanguage.PYTHON) as codebase:
48-
# Check for package.json -> False, therefore return PYTHON
49-
assert determine_project_language(tmpdir, strategy="package_json") == ProgrammingLanguage.PYTHON
50-
# Check for git_most_common -> PYTHON
51-
assert determine_project_language(tmpdir, strategy="git_most_common") == ProgrammingLanguage.PYTHON
52-
# Check for most_common -> PYTHON
53-
assert determine_project_language(tmpdir, strategy="most_common") == ProgrammingLanguage.PYTHON
48+
@pytest.mark.parametrize(
49+
"strategy, expected_language",
50+
[
51+
("package_json", ProgrammingLanguage.PYTHON), # Check for package.json -> False, therefore return PYTHON
52+
("git_most_common", ProgrammingLanguage.PYTHON), # Check for git_most_common -> PYTHON
53+
("most_common", ProgrammingLanguage.PYTHON), # Check for most_common -> PYTHON
54+
],
55+
)
56+
def test_determine_language_mixed(tmpdir, strategy, expected_language) -> None:
57+
with get_codebase_session(
58+
tmpdir=tmpdir,
59+
files={
60+
"py_file1.py": "",
61+
"py_file2.py": "", # 2 python files
62+
"ts_file1.ts": "", # 1 typescript file
63+
"txt_file1.txt": "", # 1 text file
64+
},
65+
programming_language=ProgrammingLanguage.PYTHON,
66+
) as codebase:
67+
assert determine_project_language(tmpdir, strategy=strategy) == expected_language
5468

5569

5670
def test_determine_language_threshold(tmpdir) -> None:

0 commit comments

Comments
 (0)