|
4 | 4 |
|
5 | 5 | from cpp_linter_hooks.util import check_installed
|
6 | 6 | from cpp_linter_hooks.util import get_expect_version
|
| 7 | +from cpp_linter_hooks.util import install_clang_tools |
7 | 8 |
|
8 | 9 |
|
9 |
| -@pytest.mark.parametrize( |
10 |
| - ('tool', 'expected_retval'), ( |
11 |
| - ('clang-format', 0), |
12 |
| - ('clang-tidy', 0), |
13 |
| - ), |
14 |
| -) |
15 |
| -@patch('cpp_linter_hooks.clang_format.subprocess.run') |
| 10 | +@pytest.mark.parametrize(('tool', 'expected_retval'), (('clang-format', 0), ('clang-tidy', 0),),) |
| 11 | +@patch('cpp_linter_hooks.util.subprocess.run') |
16 | 12 | def test_check_installed(mock_subprocess_run, tool, expected_retval):
|
17 | 13 | mock_subprocess_run.return_value = expected_retval
|
18 | 14 | ret = check_installed(tool)
|
19 | 15 | assert ret == expected_retval
|
20 | 16 |
|
21 | 17 |
|
22 |
| -@pytest.mark.parametrize( |
23 |
| - ('tool', 'version', 'expected_retval'), ( |
24 |
| - ('clang-format', '14', 0), |
25 |
| - ('clang-tidy', '14', 0), |
26 |
| - ), |
27 |
| -) |
28 |
| -@patch('cpp_linter_hooks.clang_format.subprocess.run') |
| 18 | +@pytest.mark.parametrize(('tool', 'version', 'expected_retval'), (('clang-format', '14', 0), ('clang-tidy', '14', 0),),) |
| 19 | +@patch('cpp_linter_hooks.util.subprocess.run') |
29 | 20 | def test_check_installed_with_version(mock_subprocess_run, tool, version, expected_retval):
|
30 | 21 | mock_subprocess_run.return_value = expected_retval
|
31 | 22 | ret = check_installed(tool, version=version)
|
32 | 23 | assert ret == expected_retval
|
33 | 24 |
|
34 | 25 |
|
35 |
| -def test_get_expect_version(): |
36 |
| - args = ['clang-format', '-i', '--style=Google', '--version=13'] |
37 |
| - version = get_expect_version(args) |
38 |
| - assert version == '13' |
| 26 | +@pytest.mark.parametrize(('tool', 'version', 'expected_retval'), (('non-exist-cmd', '14', 0),),) |
| 27 | +@patch('cpp_linter_hooks.util.subprocess.run') |
| 28 | +def test_check_installed_with_except(mock_subprocess_run, tool, version, expected_retval): |
| 29 | + mock_subprocess_run.return_value = expected_retval |
| 30 | + ret = check_installed(tool, version=version) |
| 31 | + assert ret == expected_retval |
39 | 32 |
|
40 |
| - args = ['clang-format', '-i', '--style=Google', '--version = 13'] |
41 |
| - version = get_expect_version(args) |
42 |
| - assert version == '13' |
43 | 33 |
|
44 |
| - args = ['clang-format', '-i', '--style=Google'] |
| 34 | +@pytest.mark.parametrize(('version', 'expected_retval'), (('100', 1),),) |
| 35 | +@patch('cpp_linter_hooks.util.subprocess.run') |
| 36 | +def test_install_clang_tools(mock_subprocess_run, version, expected_retval): |
| 37 | + mock_subprocess_run.return_value = expected_retval |
| 38 | + try: |
| 39 | + ret = install_clang_tools(version) |
| 40 | + assert ret == expected_retval |
| 41 | + except Exception: |
| 42 | + pass |
| 43 | + |
| 44 | + |
| 45 | +def test_get_expect_version(): |
| 46 | + args = ['clang-format', '--version 14'] |
45 | 47 | version = get_expect_version(args)
|
46 |
| - assert version == "" |
| 48 | + assert version == '14' |
47 | 49 |
|
48 |
| - args = ['clang-format', '-i', '--install=13'] |
| 50 | + args = ['clang-format', '--version=14'] |
49 | 51 | version = get_expect_version(args)
|
50 |
| - assert version == "" |
| 52 | + assert version == '14' |
0 commit comments