diff options
author | Joseph Snyder <joe.snyder@kitware.com> | 2014-10-23 21:03:30 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2014-10-29 15:27:11 (GMT) |
commit | 220e81345b68ed3ad15ef294f6de653fcd1a874c (patch) | |
tree | 759f57741cb0ba02e764515142284d6bf99ae8a1 /Source/CTest/cmParseBlanketJSCoverage.h | |
parent | a2456e157223255f0e2a71f2ddd510510e42b9e4 (diff) | |
download | CMake-220e81345b68ed3ad15ef294f6de653fcd1a874c.zip CMake-220e81345b68ed3ad15ef294f6de653fcd1a874c.tar.gz CMake-220e81345b68ed3ad15ef294f6de653fcd1a874c.tar.bz2 |
CTest: Add Javascript coverage parser
Add a coverage parser for the Blanket.js library using the JSON output of
the mocha.js test runner.
Add a test for the new parser.
Diffstat (limited to 'Source/CTest/cmParseBlanketJSCoverage.h')
-rw-r--r-- | Source/CTest/cmParseBlanketJSCoverage.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/Source/CTest/cmParseBlanketJSCoverage.h b/Source/CTest/cmParseBlanketJSCoverage.h new file mode 100644 index 0000000..fc1d477 --- /dev/null +++ b/Source/CTest/cmParseBlanketJSCoverage.h @@ -0,0 +1,48 @@ +/*============================================================================ + CMake - Cross Platform Makefile Generator + Copyright 2000-2009 Kitware, Inc. + + Distributed under the OSI-approved BSD License (the "License"); + see accompanying file Copyright.txt for details. + + This software is distributed WITHOUT ANY WARRANTY; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the License for more information. +============================================================================*/ + +#ifndef cmParseBlanketJSCoverage_h +#define cmParseBlanketJSCoverage_h + +#include "cmStandardIncludes.h" +#include "cmCTestCoverageHandler.h" + + +/** \class cmParseBlanketJSCoverage + * \brief Parse BlanketJS coverage information + * + * This class is used to parse BlanketJS(Pascal) coverage information + * generated by the Blanket.js library when used in conjunction with the + * test runner mocha.js, which is used to write out the JSON format. + * + * Blanket.js: + * http://blanketjs.org/ + * + * Mocha.js + * http://visionmedia.github.io/mocha/ + */ +class cmParseBlanketJSCoverage +{ +public: + cmParseBlanketJSCoverage(cmCTestCoverageHandlerContainer& cont, + cmCTest* ctest); + bool LoadCoverageData(std::vector<std::string> files); + // Read the JSON output + bool ReadJSONFile(std::string file); + +protected: + + class JSONParser; + cmCTestCoverageHandlerContainer& Coverage; + cmCTest* CTest; +}; +#endif |