2016-09-27 22:01:08 +03:00
|
|
|
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
|
|
|
file Copyright.txt or https://cmake.org/licensing for details. */
|
2012-04-26 01:04:28 +04:00
|
|
|
#ifndef cmParseGTMCoverage_h
|
|
|
|
#define cmParseGTMCoverage_h
|
|
|
|
|
2016-08-24 23:01:40 +03:00
|
|
|
#include <cmConfigure.h>
|
|
|
|
|
2012-05-01 21:35:07 +04:00
|
|
|
#include "cmParseMumpsCoverage.h"
|
2012-04-26 01:04:28 +04:00
|
|
|
|
2016-08-24 23:01:40 +03:00
|
|
|
#include <string>
|
|
|
|
|
|
|
|
class cmCTest;
|
|
|
|
class cmCTestCoverageHandlerContainer;
|
|
|
|
|
2012-04-26 01:04:28 +04:00
|
|
|
/** \class cmParseGTMCoverage
|
|
|
|
* \brief Parse GTM coverage information
|
|
|
|
*
|
|
|
|
* This class is used to parse GTM coverage information for
|
|
|
|
* mumps.
|
|
|
|
*/
|
2012-05-01 21:35:07 +04:00
|
|
|
class cmParseGTMCoverage : public cmParseMumpsCoverage
|
2012-04-26 01:04:28 +04:00
|
|
|
{
|
|
|
|
public:
|
2016-05-16 17:34:04 +03:00
|
|
|
cmParseGTMCoverage(cmCTestCoverageHandlerContainer& cont, cmCTest* ctest);
|
|
|
|
|
2012-05-01 21:35:07 +04:00
|
|
|
protected:
|
|
|
|
// implement virtual from parent
|
2016-06-27 22:25:27 +03:00
|
|
|
bool LoadCoverageData(const char* dir) CM_OVERRIDE;
|
2012-05-01 21:35:07 +04:00
|
|
|
// Read a single mcov file
|
|
|
|
bool ReadMCovFile(const char* f);
|
|
|
|
// find out what line in a mumps file (filepath) the given entry point
|
|
|
|
// or function is. lineoffset is set by this method.
|
|
|
|
bool FindFunctionInMumpsFile(std::string const& filepath,
|
2016-05-16 17:34:04 +03:00
|
|
|
std::string const& function, int& lineoffset);
|
2012-05-01 21:35:07 +04:00
|
|
|
// parse a line from a .mcov file, and fill in the
|
|
|
|
// routine, function, linenumber and coverage count
|
2016-05-16 17:34:04 +03:00
|
|
|
bool ParseMCOVLine(std::string const& line, std::string& routine,
|
|
|
|
std::string& function, int& linenumber, int& count);
|
2012-04-26 01:04:28 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|