simple test framework with annotations