2 #include "zypp/parser/HistoryLogReader.h"
3 #include "zypp/parser/ParseException.h"
9 bool ProcessData( const HistoryLogData::Ptr & ptr )
11 DBG << ptr->date() << " | " << ptr << endl;
18 BOOST_AUTO_TEST_CASE(basic)
20 std::vector<HistoryLogData::Ptr> history;
21 parser::HistoryLogReader parser( TESTS_SRC_DIR "/parser/HistoryLogReader_test.dat",
22 parser::HistoryLogReader::Options(),
23 [&history]( HistoryLogData::Ptr ptr )->bool {
24 history.push_back( ptr );
28 BOOST_CHECK_EQUAL( parser.ignoreInvalidItems(), false );
29 BOOST_CHECK_THROW( parser.readAll(), parser::ParseException );
31 parser.setIgnoreInvalidItems( true );
32 BOOST_CHECK_EQUAL( parser.ignoreInvalidItems(), true );
37 BOOST_CHECK_EQUAL( history.size(), 7 );
38 BOOST_CHECK( dynamic_pointer_cast<HistoryLogDataRepoAdd> ( history[0] ) );
39 BOOST_CHECK( dynamic_pointer_cast<HistoryLogDataInstall> ( history[1] ) );
40 BOOST_CHECK( dynamic_pointer_cast<HistoryLogDataInstall> ( history[2] ) );
41 BOOST_CHECK( dynamic_pointer_cast<HistoryLogDataRemove> ( history[3] ) );
42 BOOST_CHECK( dynamic_pointer_cast<HistoryLogDataRepoRemove> ( history[4] ) );
43 BOOST_CHECK( dynamic_pointer_cast<HistoryLogDataRemove> ( history[5] ) );
44 BOOST_CHECK( dynamic_pointer_cast<HistoryLogData> ( history[6] ) );
46 BOOST_CHECK_EQUAL( (*history[1])[HistoryLogDataInstall::USERDATA_INDEX], "trans|ID" ); // properly (un)escaped?
47 HistoryLogDataInstall::Ptr p = dynamic_pointer_cast<HistoryLogDataInstall>( history[1] );
48 BOOST_CHECK_EQUAL( p->userdata(), "trans|ID" ); // properly (un)escaped?