#include <Foundation/Foundation.h>
#include <Encore/Encore.h>
#include <BDBTests.h>
#include <BDBCreateTEST.h>
#include <BDBAddSimpleDataTest.h>
#include <BDBAddObjectTEST.h>
#include <BDBCursorTEST.h>
#include <BDBDeleteRecordsTEST.h>
#include <BDBBTreeRecordNumberTEST.h>
#include <BDBRecnoAccessTEST.h>


@implementation BDBTests

@end

int main (int argc, const char * argv[]) {
  NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
  ECTestSuite *suite;
  
  NSLog(@"Hello from BDBTests");

  suite = [[ECTestSuite alloc] init];
  [suite addTestcase:[[[BDBCreateTEST alloc] init] autorelease]
    withSelector: @selector (testCreation)];    
  [suite addTestcase: [[[BDBAddSimpleDataTest alloc] init] autorelease]
    withSelector: @selector(testSimpleAdditions) ];
  [suite addTestcase: [[[BDBAddObjectTEST alloc] init] autorelease]
    withSelector:@selector(testAddObject)];
  [suite addTestcase: [[[BDBCursorTEST alloc] init] autorelease]
    withSelector: @selector(testCursorOperations)];
  [suite addTestcase: [[[BDBDeleteRecordsTEST alloc] init] autorelease]
    withSelector:@selector(testDeletions)];
  [suite addTestcase: [[[BDBBTreeRecordNumberTEST alloc] init] autorelease]
    withSelector:@selector(testRecordNumbering)];
  [suite addTestcase: [[[BDBRecnoAccessTEST alloc] init] autorelease]
    withSelector: @selector(testRecNoAccess)];

  [suite runTestcases];
  
  [pool release];

  return 0;
}
