[Liblas-commits] hg-main-tree: turn off failing popen tests on unix

liblas-commits at liblas.org liblas-commits at liblas.org
Mon Aug 15 15:03:29 EDT 2011


details:   http://hg.libpc.orghg-main-tree/rev/357144aac7f8
changeset: 1095:357144aac7f8
user:      mpg
date:      Mon Aug 15 12:03:11 2011 -0700
description:
turn off failing popen tests on unix

diffstat:

 test/unit/Support.cpp        |  14 +++++++++++---
 test/unit/pc2pcTest.cpp      |   2 ++
 test/unit/pcinfoTest.cpp     |   3 +++
 test/unit/pcpipelineTest.cpp |   2 ++
 4 files changed, 18 insertions(+), 3 deletions(-)

diffs (92 lines):

diff -r f9edd098efe9 -r 357144aac7f8 test/unit/Support.cpp
--- a/test/unit/Support.cpp	Mon Aug 15 10:23:01 2011 -0700
+++ b/test/unit/Support.cpp	Mon Aug 15 12:03:11 2011 -0700
@@ -444,9 +444,9 @@
     
 #ifdef PDAL_COMPILER_MSVC
     const std::string dos_command = replaceAll(command, "/", "\\");
-    fp = _popen(dos_command.c_str(), "r");
+    fp = _popen(dos_command.c_str(), mode.c_str());
 #else
-    fp = popen(command.c_str(), "r");
+    fp = popen(command.c_str(), mode.c_str());
 #endif
 
     return fp;
@@ -473,12 +473,20 @@
     {
         status = 0;
     }
-    #endif
+#endif
 
     return status;
 }
 
 
+// BUG:
+// Under unix, the pclose() operation causes the boost unit test system
+// to produce a fatal error iff the process started by popen returns a
+// nonzero status code.  For this reason, I've put all the "negative"
+// cmd line app tests under #ifdef PDAL_COMPILER_MSVC.
+//
+// This problem shows up on mpg's Ubuntu 11.4 machine (gcc 4.5.2, boost 1.47.0)
+// as well as on Hobu's machine.
 int Support::run_command(const std::string& cmd, std::string& output)
 {
     const int maxbuf = 4096;
diff -r f9edd098efe9 -r 357144aac7f8 test/unit/pc2pcTest.cpp
--- a/test/unit/pc2pcTest.cpp	Mon Aug 15 10:23:01 2011 -0700
+++ b/test/unit/pc2pcTest.cpp	Mon Aug 15 12:03:11 2011 -0700
@@ -52,6 +52,7 @@
 }
 
 
+#ifdef PDAL_COMPILER_MSVC
 BOOST_AUTO_TEST_CASE(pc2pcTest_test1)
 {
     const std::string cmd = appName();
@@ -65,5 +66,6 @@
 
     return;
 }
+#endif
 
 BOOST_AUTO_TEST_SUITE_END()
diff -r f9edd098efe9 -r 357144aac7f8 test/unit/pcinfoTest.cpp
--- a/test/unit/pcinfoTest.cpp	Mon Aug 15 10:23:01 2011 -0700
+++ b/test/unit/pcinfoTest.cpp	Mon Aug 15 12:03:11 2011 -0700
@@ -52,6 +52,7 @@
 }
 
 
+#ifdef PDAL_COMPILER_MSVC
 BOOST_AUTO_TEST_CASE(pcinfoTest_1)
 {
     const std::string cmd = appName();
@@ -65,5 +66,7 @@
 
     return;
 }
+#endif
 
 BOOST_AUTO_TEST_SUITE_END()
+
diff -r f9edd098efe9 -r 357144aac7f8 test/unit/pcpipelineTest.cpp
--- a/test/unit/pcpipelineTest.cpp	Mon Aug 15 10:23:01 2011 -0700
+++ b/test/unit/pcpipelineTest.cpp	Mon Aug 15 12:03:11 2011 -0700
@@ -52,6 +52,7 @@
 }
 
 
+#ifdef PDAL_COMPILER_MSVC
 BOOST_AUTO_TEST_CASE(pcpipelineTest_1)
 {
     const std::string cmd = appName();
@@ -65,5 +66,6 @@
 
     return;
 }
+#endif
 
 BOOST_AUTO_TEST_SUITE_END()


More information about the Liblas-commits mailing list