repository_infos: Enable automatic updates on the main Haiku repostiory.
[haiku.git] / src / tests / kits / support / bblockcache / BlockCacheExerciseTest.h
blobe57f9a5ef8b202c5c4137a04a8c621d34c44f7f1
1 /*
2 $Id: BlockCacheExerciseTest.h 4522 2003-09-07 11:53:03Z bonefish $
4 This file defines a class for performing tests on the BBlockCache class.
6 */
9 #ifndef BlockCacheExerciseTest_H
10 #define BlockCacheExerciseTest_H
13 #include "cppunit/TestCase.h"
14 #include <List.h>
17 class BBlockCache;
20 class BlockCacheExerciseTest : public CppUnit::TestCase {
22 private:
23 BBlockCache *theCache;
24 int numBlocksInCache;
25 size_t sizeOfBlocksInCache;
26 size_t sizeOfNonCacheBlocks;
28 bool isMallocTest;
30 BList freeList;
31 BList usedList;
32 BList nonCacheList;
34 void BuildLists(void);
35 void *GetBlock(size_t blockSize);
36 void SaveBlock(void *, size_t blockSize);
37 void FreeBlock(void *, size_t blockSize);
38 void TestBlockCache(void);
40 protected:
42 public:
43 static CppUnit::Test *suite(void);
44 BlockCacheExerciseTest(std::string = "");
45 virtual ~BlockCacheExerciseTest();
46 virtual void PerformTest(void);
49 #endif