// SqlQuery_t.cxx #include "dataset_sql/SqlQuery.h" #include #include using std::string; using std::cout; using std::endl; using dset::SqlQuery; // Display messsage. void msg(string txt) { cout << "--- " << txt << " ---" << endl; } int SqlQuery_t() { msg("BEGIN TESTING SqlQuery"); SqlQuery query; msg("Testing is_valid"); assert( query.is_valid() == true ); msg("Testing set Sql query"); string sql = "select * from selection where numevents < 2000"; query.set(sql); msg("Testing to_string"); cout << query.to_string() << endl; msg("Testing Reset"); query.reset(); cout << query.to_string() << endl; string empty_query = query.to_string(); msg("Testing AND constraint to Sql query"); const string constraint1 = "numevents>3000"; const string constraint2 = "aminame LIKE '%higgs%'"; query.andconstraint(constraint1).andconstraint(constraint2); cout << query.to_string() << endl; string and_query = query.to_string(); assert( and_query.size() > empty_query.size() ); msg("Testing OR constraint to Sql query"); const string constraint3 = "aminame LIKE '%gamma%'"; query.orconstraint(constraint3); cout << query.to_string() << endl; msg("End testing SqlQuery"); return 0; } #ifdef CTEST_MAIN int main() { return SqlQuery_t(); } #endif