@@ -27,6 +27,33 @@ def test_unused_functions_j():
2727 assert ret == 0 , stdout
2828
2929
30+ def test_unused_functions_project ():
31+ ret , stdout , stderr = cppcheck (['-q' ,
32+ '--template=simple' ,
33+ '--enable=unusedFunction' ,
34+ '--inline-suppr' ,
35+ '--project={}' .format (os .path .join (PROJECT_DIR , 'unusedFunction.cppcheck' ))])
36+ assert stdout .splitlines () == []
37+ assert [
38+ "{}/3.c:3:0: style: The function 'f3_3' is never used. [unusedFunction]" .format (PROJECT_DIR )
39+ ] == stderr .splitlines ()
40+ assert ret == 0 , stdout
41+
42+
43+ def test_unused_functions_project_j ():
44+ ret , stdout , stderr = cppcheck (['-q' ,
45+ '--template=simple' ,
46+ '--enable=unusedFunction' ,
47+ '--inline-suppr' ,
48+ '--project={}' .format (os .path .join (PROJECT_DIR , 'unusedFunction.cppcheck' )),
49+ '-j2' ])
50+ assert stdout .splitlines () == [
51+ "cppcheck: unusedFunction check can't be used with '-j' option. Disabling unusedFunction check."
52+ ]
53+ assert [] == stderr .splitlines ()
54+ assert ret == 0 , stdout
55+
56+
3057def test_unused_functions_builddir (tmpdir ):
3158 build_dir = os .path .join (tmpdir , 'b1' )
3259 os .mkdir (build_dir )
@@ -51,5 +78,40 @@ def test_unused_functions_builddir_j(tmpdir):
5178 ]
5279 assert ret == 0 , stdout
5380
54- # TODO: test with project file
81+
82+ def test_unused_functions_builddir_project (tmpdir ):
83+ build_dir = os .path .join (tmpdir , 'b1' )
84+ os .mkdir (build_dir )
85+ ret , stdout , stderr = cppcheck (['-q' ,
86+ '--template=simple' ,
87+ '--enable=unusedFunction' ,
88+ '--inline-suppr' ,
89+ '--project={}' .format (os .path .join (PROJECT_DIR , 'unusedFunction.cppcheck' )),
90+ '--cppcheck-build-dir={}' .format (build_dir )])
91+ assert stdout .splitlines () == []
92+ assert stderr .splitlines () == [
93+ "{}/3.c:3:0: style: The function 'f3_3' is never used. [unusedFunction]" .format (PROJECT_DIR )
94+ ]
95+ assert ret == 0 , stdout
96+
97+
98+ # TODO: only f3_3 is unused
99+ def test_unused_functions_builddir_project_j (tmpdir ):
100+ build_dir = os .path .join (tmpdir , 'b1' )
101+ os .mkdir (build_dir )
102+ ret , stdout , stderr = cppcheck (['-q' ,
103+ '--template=simple' ,
104+ '--enable=unusedFunction' ,
105+ '--inline-suppr' ,
106+ '--project={}' .format (os .path .join (PROJECT_DIR , 'unusedFunction.cppcheck' )),
107+ '--cppcheck-build-dir={}' .format (build_dir ),
108+ '-j2' ])
109+ assert stdout .splitlines () == []
110+ assert stderr .splitlines () == [
111+ "{}/1.c:4:0: style: The function 'f1' is never used. [unusedFunction]" .format (PROJECT_DIR ),
112+ "{}/2.c:4:0: style: The function 'f2' is never used. [unusedFunction]" .format (PROJECT_DIR ),
113+ "{}/3.c:3:0: style: The function 'f3_3' is never used. [unusedFunction]" .format (PROJECT_DIR )
114+ ]
115+ assert ret == 0 , stdout
116+
55117# TODO: test with FileSettings
0 commit comments