diff options
Diffstat (limited to 'lib/subunit/c++')
-rw-r--r-- | lib/subunit/c++/README | 50 | ||||
-rw-r--r-- | lib/subunit/c++/SubunitTestProgressListener.cpp | 63 | ||||
-rw-r--r-- | lib/subunit/c++/SubunitTestProgressListener.h | 56 |
3 files changed, 0 insertions, 169 deletions
diff --git a/lib/subunit/c++/README b/lib/subunit/c++/README deleted file mode 100644 index 7b8184400e..0000000000 --- a/lib/subunit/c++/README +++ /dev/null @@ -1,50 +0,0 @@ -# -# subunit C++ bindings. -# Copyright (C) 2006 Robert Collins <robertc@robertcollins.net> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# - -Currently there are no native C++ bindings for subunit. However the C library -can be used from C++ safely. A CPPUnit listener is built as part of Subunit to -allow CPPUnit users to simply get Subunit output. - -To use the listener, use pkg-config (or your preferred replacement) to get the -cflags and link settings from libcppunit_subunit.pc. - -In your test driver main, use SubunitTestProgressListener, as shown in this -example main:: - - { - // Create the event manager and test controller - CPPUNIT_NS::TestResult controller; - - // Add a listener that collects test result - // so we can get the overall status. - // note this isn't needed for subunit... - CPPUNIT_NS::TestResultCollector result; - controller.addListener( &result ); - - // Add a listener that print test activity in subunit format. - CPPUNIT_NS::SubunitTestProgressListener progress; - controller.addListener( &progress ); - - // Add the top suite to the test runner - CPPUNIT_NS::TestRunner runner; - runner.addTest( CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest() ); - runner.run( controller ); - - return result.wasSuccessful() ? 0 : 1; - } diff --git a/lib/subunit/c++/SubunitTestProgressListener.cpp b/lib/subunit/c++/SubunitTestProgressListener.cpp deleted file mode 100644 index 76cd9e1194..0000000000 --- a/lib/subunit/c++/SubunitTestProgressListener.cpp +++ /dev/null @@ -1,63 +0,0 @@ -/* Subunit test listener for cppunit (http://cppunit.sourceforge.net). - * Copyright (C) 2006 Robert Collins <robertc@robertcollins.net> - * - * Licensed under either the Apache License, Version 2.0 or the BSD 3-clause - * license at the users choice. A copy of both licenses are available in the - * project source as Apache-2.0 and BSD. You may not use this file except in - * compliance with one of these two licences. - * - * Unless required by applicable law or agreed to in writing, software - * distributed under these licenses is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the license you chose for the specific language governing permissions - * and limitations under that license. - */ - -#include <cppunit/Exception.h> -#include <cppunit/Test.h> -#include <cppunit/TestFailure.h> -#include <cppunit/TextOutputter.h> -#include <iostream> - -// Have to be able to import the public interface without config.h. -#include "SubunitTestProgressListener.h" -#include "config.h" -#include "subunit/child.h" - - -CPPUNIT_NS_BEGIN - - -void -SubunitTestProgressListener::startTest( Test *test ) -{ - subunit_test_start(test->getName().c_str()); - last_test_failed = false; -} - -void -SubunitTestProgressListener::addFailure( const TestFailure &failure ) -{ - std::ostringstream capture_stream; - TextOutputter outputter(NULL, capture_stream); - outputter.printFailureLocation(failure.sourceLine()); - outputter.printFailureDetail(failure.thrownException()); - - if (failure.isError()) - subunit_test_error(failure.failedTestName().c_str(), - capture_stream.str().c_str()); - else - subunit_test_fail(failure.failedTestName().c_str(), - capture_stream.str().c_str()); - last_test_failed = true; -} - -void -SubunitTestProgressListener::endTest( Test *test) -{ - if (!last_test_failed) - subunit_test_pass(test->getName().c_str()); -} - - -CPPUNIT_NS_END diff --git a/lib/subunit/c++/SubunitTestProgressListener.h b/lib/subunit/c++/SubunitTestProgressListener.h deleted file mode 100644 index 5206d833c7..0000000000 --- a/lib/subunit/c++/SubunitTestProgressListener.h +++ /dev/null @@ -1,56 +0,0 @@ -/* Subunit test listener for cppunit (http://cppunit.sourceforge.net). - * Copyright (C) 2006 Robert Collins <robertc@robertcollins.net> - * - * Licensed under either the Apache License, Version 2.0 or the BSD 3-clause - * license at the users choice. A copy of both licenses are available in the - * project source as Apache-2.0 and BSD. You may not use this file except in - * compliance with one of these two licences. - * - * Unless required by applicable law or agreed to in writing, software - * distributed under these licenses is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the license you chose for the specific language governing permissions - * and limitations under that license. - */ -#ifndef CPPUNIT_SUBUNITTESTPROGRESSLISTENER_H -#define CPPUNIT_SUBUNITTESTPROGRESSLISTENER_H - -#include <cppunit/TestListener.h> - - -CPPUNIT_NS_BEGIN - - -/*! - * \brief TestListener that outputs subunit - * (http://www.robertcollins.net/unittest/subunit) compatible output. - * \ingroup TrackingTestExecution - */ -class CPPUNIT_API SubunitTestProgressListener : public TestListener -{ -public: - - SubunitTestProgressListener() {} - - void startTest( Test *test ); - - void addFailure( const TestFailure &failure ); - - void endTest( Test *test ); - -private: - /// Prevents the use of the copy constructor. - SubunitTestProgressListener( const SubunitTestProgressListener © ); - - /// Prevents the use of the copy operator. - void operator =( const SubunitTestProgressListener © ); - -private: - int last_test_failed; -}; - - -CPPUNIT_NS_END - -#endif // CPPUNIT_SUBUNITTESTPROGRESSLISTENER_H - |