summaryrefslogtreecommitdiffstats
path: root/atf-c++/build_test.cpp
diff options
context:
space:
mode:
authorjmmv <jmmv@FreeBSD.org>2014-10-30 17:14:07 +0000
committerjmmv <jmmv@FreeBSD.org>2014-10-30 17:14:07 +0000
commit3b6cf63a5c1f2de80b3b7fdd30eab1717f5c9407 (patch)
treead1d74d2ba71e1c54c3276bb7c67e257831ec21f /atf-c++/build_test.cpp
parent14f39fed9fe557bdd640e02d9abbe2e695400d9e (diff)
downloadFreeBSD-src-3b6cf63a5c1f2de80b3b7fdd30eab1717f5c9407.zip
FreeBSD-src-3b6cf63a5c1f2de80b3b7fdd30eab1717f5c9407.tar.gz
Import atf-0.21:
Released on October 23rd, 2014. * Restored the atf(7) manual page to serve as a reference to all the other manual pages shipped by ATF. * Added the -s flag to atf-sh to support specifying the shell interpreter to be used. * Removed ATF_WORKDIR. The only remaining consumers have been converted to use the standard TMPDIR environment variable. As a benefit, and because Kyua forces the TMPDIR to live within the test case's work directory, any stale files left behind by ATF will be automatically cleaned up. * Documented the environment variables recognized by each component in the relevant manual pages. This information was lost with the atf-config(1) removal. * Added a new "require.diskspace" metadata property to test cases so that they can specify the minimum amount of disk space required for the test to run. * Renamed the atf-{c,c++,sh}-api(3) manual pages to atf-{c,c++,sh}(3) for discoverability purposes. Symbolic links are provided for the time being to still make the old names visible. * Issue #5: Recommend the (expected, actual) idiom for calls to the test macros in the manual pages. * Issue #7: Stopped catching unhandled exceptions in atf-c++ tests. This propagates the crash to the caller, which in turn allows it to obtain proper debugging information. In particular, Kyua should now be able to extract a stacktrace pinpointing the problem. * Issue #8: Fixed atf-c/macros_test:use test failures spotted by the clang that ships with FreeBSD 11.0-CURRENT. * Issue #12: Improved documentation of atf-sh(3) and atf-check(1) by better explaining how they relate to each other. * Issue #14: Stopped setting 'set -e' in atf-sh. This setting was initially added as a way to enable a "strict" mode in the library and to make test cases fail fast when they run unprotected commands. However, doing so in the library is surprising as the responsibility of enabling 'set -e' should be on the user's code. Also, 'set -e' introduces inconsistent behavior on subshells and users do not expect that. * Issue #15: Fixed atf_utils_{fork,wait} to support nested calls. * Issue #16: Fixed test failures (by removing a long-standing hack) on systems that lack \e support in printf(1). * Issue #19: Removed stale references to atf-config and atf-run.
Diffstat (limited to 'atf-c++/build_test.cpp')
-rw-r--r--atf-c++/build_test.cpp37
1 files changed, 8 insertions, 29 deletions
diff --git a/atf-c++/build_test.cpp b/atf-c++/build_test.cpp
index 6852905..0a5ab96 100644
--- a/atf-c++/build_test.cpp
+++ b/atf-c++/build_test.cpp
@@ -1,6 +1,3 @@
-//
-// Automated Testing Framework (atf)
-//
// Copyright (c) 2009 The NetBSD Foundation, Inc.
// All rights reserved.
//
@@ -25,31 +22,25 @@
// IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
// IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//
+
+#include "atf-c++/build.hpp"
#include <cstring>
#include <iostream>
-#include "../atf-c/h_build.h"
+#include <atf-c++.hpp>
-#include "build.hpp"
-#include "config.hpp"
-#include "macros.hpp"
+extern "C" {
+#include "atf-c/h_build.h"
+}
-#include "detail/env.hpp"
-#include "detail/process.hpp"
-#include "detail/test_helpers.hpp"
+#include "atf-c++/detail/env.hpp"
+#include "atf-c++/detail/process.hpp"
// ------------------------------------------------------------------------
// Auxiliary functions.
// ------------------------------------------------------------------------
-namespace atf {
- namespace config {
- void __reinit(void);
- }
-}
-
template< class C >
void
print_col(const char* prefix, const C& c)
@@ -168,7 +159,6 @@ ATF_TEST_CASE_BODY(c_o)
verbose_set_env("ATF_BUILD_CC", test->cc);
verbose_set_env("ATF_BUILD_CFLAGS", test->cflags);
verbose_set_env("ATF_BUILD_CPPFLAGS", test->cppflags);
- atf::config::__reinit();
atf::process::argv_array argv =
atf::build::c_o(test->sfile, test->ofile,
@@ -190,7 +180,6 @@ ATF_TEST_CASE_BODY(cpp)
verbose_set_env("ATF_BUILD_CPP", test->cpp);
verbose_set_env("ATF_BUILD_CPPFLAGS", test->cppflags);
- atf::config::__reinit();
atf::process::argv_array argv =
atf::build::cpp(test->sfile, test->ofile,
@@ -213,7 +202,6 @@ ATF_TEST_CASE_BODY(cxx_o)
verbose_set_env("ATF_BUILD_CXX", test->cxx);
verbose_set_env("ATF_BUILD_CXXFLAGS", test->cxxflags);
verbose_set_env("ATF_BUILD_CPPFLAGS", test->cppflags);
- atf::config::__reinit();
atf::process::argv_array argv =
atf::build::cxx_o(test->sfile, test->ofile,
@@ -223,12 +211,6 @@ ATF_TEST_CASE_BODY(cxx_o)
}
// ------------------------------------------------------------------------
-// Tests cases for the header file.
-// ------------------------------------------------------------------------
-
-HEADER_TC(include, "atf-c++/build.hpp");
-
-// ------------------------------------------------------------------------
// Main.
// ------------------------------------------------------------------------
@@ -241,7 +223,4 @@ ATF_INIT_TEST_CASES(tcs)
ATF_ADD_TEST_CASE(tcs, c_o);
ATF_ADD_TEST_CASE(tcs, cpp);
ATF_ADD_TEST_CASE(tcs, cxx_o);
-
- // Add the test cases for the header file.
- ATF_ADD_TEST_CASE(tcs, include);
}
OpenPOWER on IntegriCloud