ocarina/tests/database/database.cpp

52 lines
855 B
C++

/*
* Copyright 2013 (c) Anna Schumaker.
*/
#include <database.h>
#include <print.h>
class DBTest : public DatabaseEntry {
public:
unsigned int value;
DBTest(unsigned int);
};
DBTest :: DBTest(unsigned int val)
{
value = val;
valid = true;
}
void print_db(Database<DBTest> &db)
{
print("\nDatabase size: %u\n", db.size());
print("Num rows: %u\n", db.num_rows());
print("First: %u\n", db.first());
print("Last: %u\n", db.last());
for (unsigned int i = db.first(); i != db.num_rows(); i = db.next(i))
print("db[%u] = %u\n", i, db[i].value);
}
void test_insertion(Database<DBTest> &db)
{
for (unsigned int i = 1; i <= 10; i++)
db.insert(DBTest(i));
print_db(db);
}
void test_deletion(Database<DBTest> &db)
{
}
int main(int argc, char **argv)
{
Database<DBTest> db("test.db");
test_insertion(db);
test_deletion(db);
return 0;
}