00001 /* 00002 * steghide 0.5.1 - a steganography program 00003 * Copyright (C) 1999-2003 Stefan Hetzl <shetzl@chello.at> 00004 * 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * as published by the Free Software Foundation; either version 2 00008 * of the License, or (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 * 00019 */ 00020 00021 #ifndef SH_TEST_H 00022 #define SH_TEST_H 00023 00024 #include <string> 00025 00026 class TestSuite ; 00027 00028 class Test { 00029 public: 00030 Test (void) : Name(std::string("unnamed test")), Suite(NULL) {} ; 00031 Test (const std::string& n) : Name(n), Suite(NULL) {} ; 00032 Test (const std::string& n, TestSuite* s) : Name(n), Suite(s) {} ; 00033 00034 virtual ~Test (void) {} ; 00035 00036 const std::string& getName (void) 00037 { return Name ; } ; 00038 00039 TestSuite* getSuite (void) 00040 { return Suite ; } ; 00041 00042 virtual void run (void) = 0 ; 00043 00044 private: 00045 std::string Name ; 00046 TestSuite* Suite ; 00047 } ; 00048 00049 #endif // ndef SH_TEST_H