summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestTestHandler.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2008-05-23 15:28:46 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2008-05-23 15:28:46 (GMT)
commit1427aa8391fe1a38ebd532487d1d87db0417ae9f (patch)
treea54907b30cd9d34eeec00b978220bc87b28489f7 /Source/CTest/cmCTestTestHandler.cxx
parent20e0d163e01c6948e0a8c5ace56eee2a8f14ca7f (diff)
downloadCMake-1427aa8391fe1a38ebd532487d1d87db0417ae9f.zip
CMake-1427aa8391fe1a38ebd532487d1d87db0417ae9f.tar.gz
CMake-1427aa8391fe1a38ebd532487d1d87db0417ae9f.tar.bz2
BUG: fix for bug 7077 handle DartMeasurement tags with tyep text/html
Diffstat (limited to 'Source/CTest/cmCTestTestHandler.cxx')
-rw-r--r--Source/CTest/cmCTestTestHandler.cxx20
1 files changed, 20 insertions, 0 deletions
diff --git a/Source/CTest/cmCTestTestHandler.cxx b/Source/CTest/cmCTestTestHandler.cxx
index 2c70de4..9a6792e 100644
--- a/Source/CTest/cmCTestTestHandler.cxx
+++ b/Source/CTest/cmCTestTestHandler.cxx
@@ -1543,6 +1543,11 @@ std::string cmCTestTestHandler::GenerateRegressionImages(
SPACE_REGEX "*(name|type|encoding|compression)=\"([^\"]*)\""
SPACE_REGEX "*(name|type|encoding|compression)=\"([^\"]*)\""
SPACE_REGEX "*>([^<]*)</DartMeasurement>");
+ cmsys::RegularExpression cdatameasurement(
+ "<DartMeasurement"
+ SPACE_REGEX "*(name|type|encoding|compression)=\"([^\"]*)\""
+ SPACE_REGEX "*(name|type|encoding|compression)=\"([^\"]*)\""
+ SPACE_REGEX "*>(<!\\[CDATA\\[([^]]*\\]?[^]]+)*]]>)</DartMeasurement>");
cmsys::RegularExpression measurementfile(
"<DartMeasurementFile"
SPACE_REGEX "*(name|type|encoding|compression)=\"([^\"]*)\""
@@ -1602,6 +1607,21 @@ std::string cmCTestTestHandler::GenerateRegressionImages(
cxml.erase(fourattributes.start(),
fourattributes.end() - fourattributes.start());
}
+ else if ( cdatameasurement.find(cxml) )
+ {
+ ostr
+ << "\t\t\t<NamedMeasurement"
+ << " " << cdatameasurement.match(1) << "=\""
+ << cdatameasurement.match(2) << "\""
+ << " " << cdatameasurement.match(3) << "=\""
+ << cdatameasurement.match(4) << "\""
+ << "><Value>" << cdatameasurement.match(5)
+ << "</Value></NamedMeasurement>"
+ << std::endl;
+
+ cxml.erase(cdatameasurement.start(),
+ cdatameasurement.end() - cdatameasurement.start());
+ }
else if ( measurementfile.find(cxml) )
{
const std::string& filename =