
Hello everybody, I think I have some idea that might improve the ease for the end user to test if he properly set-up his class for serialization. Sorry if this idea has already been discussed (or even is already implemented), but I tried to search a little, without finding anything about this. The main idea is that if an user has a serializable class, he will probably want to test wether he forgot to put some usefull member data in his |serialize function. Thus, he will have to write some test with always the same pattern. My suggestion is to put test_tools.hpp inside the serialization library, along with some template :| || |template<class T> void check_serialization(T const &t) // t should not be initialized to default values| |{| | const char * testfile = boost::archive::tmpnam(NULL);| | BOOST_REQUIRE(NULL != testfile);| | {| || std::ofstream ofs(testFile); | boost::archive::text_oarchive oa(ofs);| | oa|| << t;| | }| | { ||| T t1; || std::ifstream ifs(testFile, std::ios::binary); | boost::archive::text_iarchive ia(ifs); | ia >> t1 ||| }| | BOOST_CHECK_EQUAL(t, t1);| | std::remove(testfile);| |||}| |||| Do you think it would make a worthy addition ? -- Loïc | |