Boost logo

Boost-Commit :

From: ramey_at_[hidden]
Date: 2007-08-15 16:09:25


Author: ramey
Date: 2007-08-15 16:09:24 EDT (Wed, 15 Aug 2007)
New Revision: 38701
URL: http://svn.boost.org/trac/boost/changeset/38701

Log:
initial checkin

Added:
   branches/serialization_next_release/boost/libs/serialization/test/test_valarray.cpp (contents, props changed)

Added: branches/serialization_next_release/boost/libs/serialization/test/test_valarray.cpp
==============================================================================
--- (empty file)
+++ branches/serialization_next_release/boost/libs/serialization/test/test_valarray.cpp 2007-08-15 16:09:24 EDT (Wed, 15 Aug 2007)
@@ -0,0 +1,57 @@
+/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
+// test_valarrray.cpp
+
+// (C) Copyright 2005 Matthias Troyer .
+// Use, modification and distribution is subject to the Boost Software
+// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+// should pass compilation and execution
+
+#include <fstream>
+
+#include <cstdio> // remove
+#include <boost/config.hpp>
+#if defined(BOOST_NO_STDC_NAMESPACE)
+namespace std{
+ using ::remove;
+}
+#endif
+
+#include "test_tools.hpp"
+#include <boost/preprocessor/stringize.hpp>
+#include BOOST_PP_STRINGIZE(BOOST_ARCHIVE_TEST)
+
+#include <boost/serialization/valarray.hpp>
+
+int test_main( int /* argc */, char* /* argv */[] )
+{
+ const char * testfile = boost::archive::tmpnam(NULL);
+ BOOST_REQUIRE(NULL != testfile);
+
+ // test array of objects
+ std::valarray<int> avalarray(2);
+ avalarray[0] = 42;
+ avalarray[1] = -42;
+ {
+ test_ostream os(testfile, TEST_STREAM_FLAGS);
+ test_oarchive oa(os);
+ oa << boost::serialization::make_nvp("avalarray", avalarray);
+ }
+ std::valarray<int> avalarray1;
+ {
+ test_istream is(testfile, TEST_STREAM_FLAGS);
+ test_iarchive ia(is);
+ ia >> boost::serialization::make_nvp("avalarray", avalarray1);
+ }
+ bool equal = ( avalarray.size() == avalarray1.size()
+ && avalarray[0] == avalarray1[0]
+ && avalarray[1] == avalarray1[1]
+ );
+
+ BOOST_CHECK(equal);
+ std::remove(testfile);
+ return EXIT_SUCCESS;
+}
+
+// EOF


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk