summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorAmitha Perera <perera@cs.rpi.edu>2001-08-23 22:30:05 (GMT)
committerAmitha Perera <perera@cs.rpi.edu>2001-08-23 22:30:05 (GMT)
commit2eb9d09e04735163a4c5d66e789ff9b6e60e0220 (patch)
tree874633211f1b83e6ab7f23b796a0b230cf6ca6bb /Source
parent538ff79e2f606c4c3722d94e10f0a759a1f97d86 (diff)
downloadCMake-2eb9d09e04735163a4c5d66e789ff9b6e60e0220.zip
CMake-2eb9d09e04735163a4c5d66e789ff9b6e60e0220.tar.gz
CMake-2eb9d09e04735163a4c5d66e789ff9b6e60e0220.tar.bz2
BUG: ADD_TEST now only does stuff if ENABLE_TESTING has been run.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmAddTestCommand.cxx40
-rw-r--r--Source/cmAddTestCommand.h4
2 files changed, 25 insertions, 19 deletions
diff --git a/Source/cmAddTestCommand.cxx b/Source/cmAddTestCommand.cxx
index 2f06b4f..e7d16b4 100644
--- a/Source/cmAddTestCommand.cxx
+++ b/Source/cmAddTestCommand.cxx
@@ -78,28 +78,32 @@ void cmAddTestCommand::FinalPass()
fname += "/";
fname += "DartTestfile.txt";
- // Open the output Testfile
- std::ofstream fout(fname.c_str(), std::ios::app);
- if (!fout)
+
+ // If the file doesn't exist, then ENABLE_TESTING hasn't been run
+ if (cmSystemTools::FileExists(fname.c_str()))
{
- cmSystemTools::Error("Error Writing ", fname.c_str());
- return;
- }
+ // Open the output Testfile
+ std::ofstream fout(fname.c_str(), std::ios::app);
+ if (!fout)
+ {
+ cmSystemTools::Error("Error Writing ", fname.c_str());
+ return;
+ }
- std::vector<std::string>::iterator it;
+ std::vector<std::string>::iterator it;
// for each arg in the test
- fout << "ADD_TEST(";
- it = m_Args.begin();
- fout << (*it).c_str();
- ++it;
- for (; it != m_Args.end(); ++it)
- {
- fout << " " << (*it).c_str();
- }
- fout << ")" << std::endl;
- fout.close();
-
+ fout << "ADD_TEST(";
+ it = m_Args.begin();
+ fout << (*it).c_str();
+ ++it;
+ for (; it != m_Args.end(); ++it)
+ {
+ fout << " " << (*it).c_str();
+ }
+ fout << ")" << std::endl;
+ fout.close();
+ }
return;
}
diff --git a/Source/cmAddTestCommand.h b/Source/cmAddTestCommand.h
index 6137072..6f0e272 100644
--- a/Source/cmAddTestCommand.h
+++ b/Source/cmAddTestCommand.h
@@ -92,7 +92,9 @@ public:
{
return
"ADD_TEST(testname exename arg1 arg2 arg3 ...)\n"
- "This command adds a test target to the current directory. "
+ "If the ENABLE_TESTING command has been run, this command adds a"
+ "test target to the current directory. If ENABLE_TESTING has not"
+ "been run, this command does nothing.\n"
"The tests are run by the testing subsystem by executing exename "
"with the specified arguments. exename can be either an executable "
"built by built by this project or an arbitrary executable on the "