Skip to content

Commit

Permalink
small test/cli/qml_test.py cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
firewave committed Jul 8, 2024
1 parent 9f3dd6b commit a1af9e6
Showing 1 changed file with 33 additions and 33 deletions.
66 changes: 33 additions & 33 deletions test/cli/qml_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# python3 -m pytest test-qml.py

import os
import pytest
from testutils import cppcheck

__script_dir = os.path.dirname(os.path.abspath(__file__))
Expand All @@ -11,55 +12,54 @@
__project_dir_sep = __project_dir + os.path.sep


def test_unused_functions():
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', '-j1', __project_dir])
# there are unused functions. But fillSampleData is not unused because that is referenced from main.qml
def __test_unused_functions(extra_args):
args = [
'-q',
'--template=simple',
'--library=qt',
'--enable=unusedFunction',
__project_dir
]
args += extra_args
ret, stdout, stderr = cppcheck(args)
assert stdout.splitlines() == []
assert stderr.splitlines() == [
"{}samplemodel.cpp:9:0: style: The function 'rowCount' is never used. [unusedFunction]".format(__project_dir_sep),
lines = stderr.splitlines()
lines.sort()
# there are unused functions. But fillSampleData is not unused because that is referenced from main.qml
assert lines == [
"{}samplemodel.cpp:15:0: style: The function 'data' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:38:0: style: The function 'roleNames' is never used. [unusedFunction]".format(__project_dir_sep)
"{}samplemodel.cpp:38:0: style: The function 'roleNames' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:9:0: style: The function 'rowCount' is never used. [unusedFunction]".format(__project_dir_sep)
]
assert ret == 0, stdout


def test_unused_functions():
__test_unused_functions(['-j1'])


def test_unused_functions_j():
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', '-j2', __project_dir])
assert stdout.splitlines() == [
"cppcheck: unusedFunction check requires --cppcheck-build-dir to be active with -j."
args = [
'-q',
'--template=simple',
'--library=qt',
'--enable=unusedFunction',
'-j2',
__project_dir
]
ret, stdout, stderr = cppcheck(args)
assert stdout.splitlines() == ["cppcheck: unusedFunction check requires --cppcheck-build-dir to be active with -j."]
assert stderr.splitlines() == []
assert ret == 0, stdout # TODO: abil out on this
assert ret == 0, stdout


# TODO: fillSampleData is not unused
@pytest.mark.xfail(strict=True)
def test_unused_functions_builddir(tmpdir):
build_dir = os.path.join(tmpdir, 'b1')
os.mkdir(build_dir)
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', '--cppcheck-build-dir={}'.format(build_dir), __project_dir])
assert stdout.splitlines() == []
assert stderr.splitlines() == [
"{}samplemodel.cpp:15:0: style: The function 'data' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:47:0: style: The function 'fillSampleData' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:38:0: style: The function 'roleNames' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:9:0: style: The function 'rowCount' is never used. [unusedFunction]".format(__project_dir_sep),
]
assert ret == 0, stdout

__test_unused_functions(['--cppcheck-build-dir={}'.format(build_dir)])

# TODO: fillSampleData is not unused
def test_unused_functions_builddir_j(tmpdir):
build_dir = os.path.join(tmpdir, 'b1')
os.mkdir(build_dir)
ret, stdout, stderr = cppcheck(['-q', '--template=simple', '--library=qt', '--enable=unusedFunction', '-j2', '--cppcheck-build-dir={}'.format(build_dir), __project_dir])
assert stdout.splitlines() == []
assert stderr.splitlines() == [
"{}samplemodel.cpp:15:0: style: The function 'data' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:47:0: style: The function 'fillSampleData' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:38:0: style: The function 'roleNames' is never used. [unusedFunction]".format(__project_dir_sep),
"{}samplemodel.cpp:9:0: style: The function 'rowCount' is never used. [unusedFunction]".format(__project_dir_sep),
]
assert ret == 0, stdout

# TODO: test with project file
# TODO: test with FileSettings

0 comments on commit a1af9e6

Please sign in to comment.