root / trunk / tests / CuTest.h

Revision 286, 2.1 kB (checked in by indeyets, 13 months ago)

fixed some compile-warnings

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1#ifndef CU_TEST_H
2#define CU_TEST_H
3
4#include <setjmp.h>
5#include <stdarg.h>
6
7/* CuString */
8
9char* CuStrAlloc(int size);
10char* CuStrCopy(char* old);
11
12#define CU_ALLOC(TYPE)          ((TYPE*) malloc(sizeof(TYPE)))
13
14#define HUGE_STRING_LEN 8192
15#define STRING_MAX              256
16#define STRING_INC              256
17
18typedef struct
19{
20        int length;
21        int size;
22        char* buffer;
23} CuString;
24
25void CuStringInit(CuString* str);
26CuString* CuStringNew(void);
27void CuStringRead(CuString* str, char* path);
28void CuStringAppend(CuString* str, char* text);
29void CuStringAppendLen(CuString* str, char* text, long length);
30void CuStringAppendChar(CuString* str, char ch);
31void CuStringAppendFormat(CuString* str, char* format, ...);
32void CuStringResize(CuString* str, int newSize);
33void CuStringFree(CuString* str);
34
35void CuStringFree(CuString *str);
36
37/* CuTest */
38
39typedef struct CuTest CuTest;
40
41typedef void (*TestFunction)(CuTest *);
42
43struct CuTest
44{
45        char* name;
46        TestFunction function;
47        int failed;
48        int ran;
49        char* message;
50        jmp_buf *jumpBuf;
51};
52
53void CuTestInit(CuTest* t, char* name, TestFunction function);
54CuTest* CuTestNew(char* name, TestFunction function);
55void CuFail(CuTest* tc, char* message);
56void CuAssert(CuTest* tc, char* message, int condition);
57void CuAssertTrue(CuTest* tc, int condition);
58void CuAssertStrEquals(CuTest* tc, char* expected, char* actual);
59void CuAssertIntEquals(CuTest* tc, int expected, int actual);
60void CuAssertPtrEquals(CuTest* tc, void* expected, void* actual);
61void CuAssertPtrNotNull(CuTest* tc, void* pointer);
62void CuTestRun(CuTest* tc);
63
64/* CuSuite */
65
66#define MAX_TEST_CASES  1024   
67
68#define SUITE_ADD_TEST(SUITE,TEST)      CuSuiteAdd(SUITE, CuTestNew(#TEST, TEST))
69
70typedef struct
71{
72        int count;
73        CuTest* list[MAX_TEST_CASES];
74        int failCount;
75
76} CuSuite;
77
78
79void CuSuiteInit(CuSuite* testSuite);
80CuSuite* CuSuiteNew();
81void CuSuiteFree(CuSuite* testSuite);
82void CuSuiteAdd(CuSuite* testSuite, CuTest *testCase);
83void CuSuiteAddSuite(CuSuite* testSuite, CuSuite* testSuite2);
84void CuSuiteRun(CuSuite* testSuite);
85void CuSuiteSummary(CuSuite* testSuite, CuString* summary);
86void CuSuiteDetails(CuSuite* testSuite, CuString* details);
87void CuSuiteFree(CuSuite *testsuite);
88
89#endif /* CU_TEST_H */
Note: See TracBrowser for help on using the browser.