Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Latest commit

 

History

History
105 lines (86 loc) · 3.01 KB

SDL_test_assert.h

File metadata and controls

105 lines (86 loc) · 3.01 KB
 
1
2
/*
Simple DirectMedia Layer
Feb 15, 2013
Feb 15, 2013
3
Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_test_assert.h
May 18, 2013
May 18, 2013
24
*
25
26
27
28
29
* Include file for SDL test framework.
*
* This code is a part of the SDL2_test library, not the main SDL library.
*/
May 18, 2013
May 18, 2013
30
/*
31
32
33
34
35
36
37
38
39
40
41
42
43
44
*
* Assert API for test code and test cases
*
*/
#ifndef _SDL_test_assert_h
#define _SDL_test_assert_h
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
Dec 1, 2012
Dec 1, 2012
45
46
47
/**
* \brief Fails the assert.
*/
May 18, 2013
May 18, 2013
48
#define ASSERT_FAIL 0
Dec 1, 2012
Dec 1, 2012
49
50
51
52
/**
* \brief Passes the assert.
*/
May 18, 2013
May 18, 2013
53
#define ASSERT_PASS 1
Dec 1, 2012
Dec 1, 2012
54
55
56
57
58
59
60
/**
* \brief Assert that logs and break execution flow on failures.
*
* \param assertCondition Evaluated condition or variable to assert; fail (==0) or pass (!=0).
* \param assertDescription Message to log with the assert describing it.
*/
Dec 24, 2012
Dec 24, 2012
61
void SDLTest_Assert(int assertCondition, const char *assertDescription, ...);
Dec 15, 2012
Dec 15, 2012
64
* \brief Assert for test cases that logs but does not break execution flow on failures. Updates assertion counters.
65
66
67
*
* \param assertCondition Evaluated condition or variable to assert; fail (==0) or pass (!=0).
* \param assertDescription Message to log with the assert describing it.
Dec 1, 2012
Dec 1, 2012
68
*
Dec 15, 2012
Dec 15, 2012
69
* \returns Returns the assertCondition so it can be used to externally to break execution flow if desired.
Dec 24, 2012
Dec 24, 2012
71
int SDLTest_AssertCheck(int assertCondition, const char *assertDescription, ...);
Dec 15, 2012
Dec 15, 2012
72
73
74
75
76
77
/**
* \brief Explicitely pass without checking an assertion condition. Updates assertion counter.
*
* \param assertDescription Message to log with the assert describing it.
*/
Dec 24, 2012
Dec 24, 2012
78
void SDLTest_AssertPass(const char *assertDescription, ...);
79
80
81
82
83
84
85
86
87
88
89
/**
* \brief Resets the assert summary counters to zero.
*/
void SDLTest_ResetAssertSummary();
/**
* \brief Logs summary of all assertions (total, pass, fail) since last reset as INFO or ERROR.
*/
void SDLTest_LogAssertSummary();
Dec 10, 2012
Dec 10, 2012
90
91
92
93
94
95
96
97
/**
* \brief Converts the current assert summary state to a test result.
*
* \returns TEST_RESULT_PASSED, TEST_RESULT_FAILED, or TEST_RESULT_NO_ASSERT
*/
int SDLTest_AssertSummaryToTestResult();
98
99
100
101
102
103
104
105
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* _SDL_test_assert_h */
/* vi: set ts=4 sw=4 expandtab: */