//======================================================================== // // Name: CutRecorder_t.cpp // // Purpose: Component test for CutRecorder. // // Created: 3-Jul-2000 H. Greenlee // //======================================================================== #include #include #include "CutRecorder.hpp" using namespace std; using namespace trf; int main() { cout << "------ Testing component CutRecorder. ------" << endl; // Make sure assert is enabled. bool assert_flag = false; assert ( ( assert_flag = true, assert_flag ) ); if ( ! assert_flag ) { cerr << "Assert is disabled" << endl; return 1; } // Get static instance. CutRecorder* p = CutRecorder::instance(); assert(p != 0); // Global enable. assert(!p->enabled()); p->set_enable(); assert(p->enabled()); // Register some cuts. CutID cut1 = p->register_cut("cut1"); assert(p->has_cut("cut1")); assert(cut1 == p->get_cutid("cut1")); CutID cut2 = p->register_cut("cut2"); assert(p->has_cut("cut2")); assert(cut2 == p->get_cutid("cut2")); // Add cut records. assert(!p->has_record(0)); CutRecord r1 = *(p->make_cut_record(-1, 0, 0)); assert(p->has_record(0)); assert(p->get_record(0) == r1); assert((*p)[0] == r1); assert(!p->has_record(1)); CutRecord r2 = *(p->make_cut_record(0, 0, 0)); assert(p->has_record(1)); assert(p->get_record(1) == r2); assert((*p)[1] == r2); // Try accessing the whole collection. const CutRecorder::CutRecordList& rs = p->get_record_list(); assert(p->num_records() == 2); assert(rs.size() == 2); assert(rs.front() == r1); assert(rs.back() == r2); // Clear cut record collection. p->clear(); assert(p->num_records() == 0); // Done (success). cout << "All tests passed." << endl; return 0; }