Skip to content

Commit 291d492

Browse files
committed
test/cli/qml_test.py: added more tests and improved existing ones
1 parent f3d2680 commit 291d492

1 file changed

Lines changed: 32 additions & 6 deletions

File tree

test/cli/qml_test.py

Lines changed: 32 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,18 @@
22
# python3 -m pytest test-qml.py
33

44
import os
5-
import pytest
65
from testutils import cppcheck
76

87
__script_dir = os.path.dirname(os.path.abspath(__file__))
98

9+
# there are unused functions. But fillSampleData is not unused because that is referenced from main.qml
1010
PROJECT_DIR = os.path.join(__script_dir, 'QML-Samples-TableView')
1111

1212

1313
def test_unused_functions():
1414
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', PROJECT_DIR])
1515
# there are unused functions. But fillSampleData is not unused because that is referenced from main.qml
16+
assert stdout.splitlines() == []
1617
assert stderr.splitlines() == [
1718
"{}/samplemodel.cpp:9:0: style: The function 'rowCount' is never used. [unusedFunction]".format(PROJECT_DIR),
1819
"{}/samplemodel.cpp:15:0: style: The function 'data' is never used. [unusedFunction]".format(PROJECT_DIR),
@@ -21,16 +22,41 @@ def test_unused_functions():
2122
assert ret == 0, stdout
2223

2324

24-
@pytest.mark.xfail
25-
def test_unused_functions_j(tmpdir):
25+
def test_unused_functions_j():
26+
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', '-j2', PROJECT_DIR])
27+
assert stdout.splitlines() == [
28+
"cppcheck: unusedFunction check can't be used with '-j' option. Disabling unusedFunction check."
29+
]
30+
assert stderr.splitlines() == []
31+
assert ret == 0, stdout # TODO: abil out on this
32+
33+
34+
# TODO: fillSampleData is not unused
35+
def test_unused_functions_builddir(tmpdir):
2636
build_dir = os.path.join(tmpdir, 'b1')
2737
os.mkdir(build_dir)
28-
ret, stdout, stderr = cppcheck(['--template=simple', '--library=qt', '--enable=unusedFunction', '-j2', '--cppcheck-build-dir={}'.format(build_dir), PROJECT_DIR])
29-
# there are unused functions. But fillSampleData is not unused because that is referenced from main.qml
38+
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', '--cppcheck-build-dir={}'.format(build_dir), PROJECT_DIR])
39+
assert stdout.splitlines() == []
3040
assert stderr.splitlines() == [
41+
"{}/samplemodel.cpp:15:0: style: The function 'data' is never used. [unusedFunction]".format(PROJECT_DIR),
42+
"{}/samplemodel.cpp:47:0: style: The function 'fillSampleData' is never used. [unusedFunction]".format(PROJECT_DIR),
43+
"{}/samplemodel.cpp:38:0: style: The function 'roleNames' is never used. [unusedFunction]".format(PROJECT_DIR),
3144
"{}/samplemodel.cpp:9:0: style: The function 'rowCount' is never used. [unusedFunction]".format(PROJECT_DIR),
45+
]
46+
assert ret == 0, stdout
47+
48+
49+
# TODO: fillSampleData is not unused
50+
def test_unused_functions_builddir_j(tmpdir):
51+
build_dir = os.path.join(tmpdir, 'b1')
52+
os.mkdir(build_dir)
53+
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', '-j2', '--cppcheck-build-dir={}'.format(build_dir), PROJECT_DIR])
54+
assert stdout.splitlines() == []
55+
assert stderr.splitlines() == [
3256
"{}/samplemodel.cpp:15:0: style: The function 'data' is never used. [unusedFunction]".format(PROJECT_DIR),
33-
"{}/samplemodel.cpp:38:0: style: The function 'roleNames' is never used. [unusedFunction]".format(PROJECT_DIR)
57+
"{}/samplemodel.cpp:47:0: style: The function 'fillSampleData' is never used. [unusedFunction]".format(PROJECT_DIR),
58+
"{}/samplemodel.cpp:38:0: style: The function 'roleNames' is never used. [unusedFunction]".format(PROJECT_DIR),
59+
"{}/samplemodel.cpp:9:0: style: The function 'rowCount' is never used. [unusedFunction]".format(PROJECT_DIR),
3460
]
3561
assert ret == 0, stdout
3662

0 commit comments

Comments
 (0)