9 #include <boost/test/unit_test.hpp> 11 #define BOOST_TEST_MODULE test_hikyuu_serialize_suite 12 #include <boost/test/unit_test.hpp> 16 #include <boost/archive/xml_oarchive.hpp> 17 #include <boost/archive/xml_iarchive.hpp> 18 #include <hikyuu/StockManager.h> 19 #include <hikyuu/serialization/Block_serialization.h> 23 #if HKU_SUPPORT_SERIALIZATION 33 StockManager& sm = StockManager::instance();
34 string filename(sm.tmpdir());
35 filename +=
"/Block.xml";
37 Block blk1(
"test",
"test_1");
39 std::ofstream ofs(filename);
40 boost::archive::xml_oarchive oa(ofs);
41 oa << BOOST_SERIALIZATION_NVP(blk1);
46 std::ifstream ifs(filename);
47 boost::archive::xml_iarchive ia(ifs);
48 ia >> BOOST_SERIALIZATION_NVP(blk2);
51 BOOST_CHECK(blk1.category() == blk2.category());
52 BOOST_CHECK(blk1.name() == blk2.name());
53 BOOST_CHECK(blk1.size() == blk2.size());
58 std::ofstream ofs(filename);
59 boost::archive::xml_oarchive oa(ofs);
60 oa << BOOST_SERIALIZATION_NVP(blk1);
63 std::ifstream ifs(filename);
64 boost::archive::xml_iarchive ia(ifs);
65 ia >> BOOST_SERIALIZATION_NVP(blk2);
67 BOOST_CHECK(blk1.category() == blk2.category());
68 BOOST_CHECK(blk1.name() == blk2.name());
69 BOOST_CHECK(blk1.size() == blk2.size());
70 BOOST_CHECK(blk2.have(
"sh000001"));
71 BOOST_CHECK(blk2.have(
"sz000001"));
BOOST_AUTO_TEST_CASE(test_Block_1)