7 lcov --capture --directory ${BUILD_DIR} --no-external --base-directory ${SOURCES_DIR} --output-file coverage.info.noext -q
9 # make a working copy of report
10 cp -f coverage.info.noext covfile
11 # remove all reports of GUI and external parts (for all the next kinds of reports)
12 for MASK in '*wrap*' 'moc_*' 'XAO_*' 'SketcherPrs_*' 'GeomAlgoImpl_*' 'ModuleBase_*' '*Widget*' '*Splitter*'; do
13 lcov -r covfile ${MASK} --output-file covfile_res -q
14 mv -f covfile_res covfile
21 for MASK in 'Build' 'Collection' 'Construction' 'Exchange' 'Features' 'GDML' 'Primitives' 'Initialization' 'Parameters' 'PartSet' 'Sketch'; do
22 lcov -r covAPI *${MASK}Plugin* --output-file covAPI_res -q
23 mv -f covAPI_res covAPI
25 # remove low level API
26 for MASK in 'Geom' 'GeomAlgo' 'GeomData' 'Model'; do
27 lcov -r covAPI *${MASK}API* --output-file covAPI_res -q
28 mv -f covAPI_res covAPI
31 for MASK in 'Config' 'Events' 'GeomData' 'GeomValidators' 'Model_' 'ModelGeomAlgo' 'Selector' 'SketchSolver'; do
32 lcov -r covAPI *${MASK}* --output-file covAPI_res -q
33 mv -f covAPI_res covAPI
36 genhtml covAPI --output-directory lcov_htmlAPI -q
39 # prepare Direct report
40 cp -f covfile covDirect
42 for MASK in 'Build' 'Collection' 'Construction' 'Exchange' 'Features' 'GDML' 'Primitives' 'Initialization' 'Parameters' 'PartSet' 'Sketch'; do
43 str=$startmask$MASK$endmask
44 lcov -r covDirect *${MASK}Plugin* --output-file covDirect_res -q
45 mv -f covDirect_res covDirect
47 # remove low level API
48 for MASK in 'GDML' 'Primitives' 'Builder' 'Collection' 'Connector' 'Construction' 'Model' 'Exchange' 'Features' 'ModelHigh' 'Parameters' 'PartSet' 'Sketch' 'Build' 'GeomData'; do
49 lcov -r covDirect *${MASK}API* --output-file covDirect_res -q
50 mv -f covDirect_res covDirect
53 for MASK in 'Config' 'Events' 'GeomValidators' 'Model_' 'ModelGeomAlgo' 'Selector' 'SketchSolver' 'GeomData'; do
54 lcov -r covDirect *${MASK}* --output-file covDirect_res -q
55 mv -f covDirect_res covDirect
57 rm -rf lcov_htmlDirect
58 genhtml covDirect --output-directory lcov_htmlDirect -q
63 # remove low level API
64 for MASK in 'Geom' 'GeomAlgo' 'GDML' 'Primitives' 'Builder' 'Collection' 'Connector' 'Construction' 'Exchange' 'Features' 'ModelHigh' 'Parameters' 'PartSet' 'Sketch' 'Build'; do
65 lcov -r covElse *${MASK}API* --output-file covElse_res -q
66 mv -f covElse_res covElse
68 # remove SketchPlugin's Ellipse feature (unsupported yet)
69 lcov -r covElse SketchPlugin*Ellipse* --output-file covElse_res -q
70 mv -f covElse_res covElse
71 # remove GUI related files from Config plugin
72 for MASK in 'DataModelReader' 'Translator' 'PointerMessage'; do
73 lcov -r covElse *Config_${MASK}* --output-file covElse_res -q
74 mv -f covElse_res covElse
77 genhtml covElse --output-directory lcov_htmlElse -q