arsa  2.7
Classes | Macros | Typedefs | Functions
SDL_test_harness.h File Reference
#include "begin_code.h"
#include "close_code.h"

Go to the source code of this file.

Classes

struct  SDLTest_TestCaseReference
 
struct  SDLTest_TestSuiteReference
 

Macros

#define TEST_ENABLED   1
 
#define TEST_DISABLED   0
 
#define TEST_ABORTED   -1
 
#define TEST_STARTED   0
 
#define TEST_COMPLETED   1
 
#define TEST_SKIPPED   2
 
#define TEST_RESULT_PASSED   0
 
#define TEST_RESULT_FAILED   1
 
#define TEST_RESULT_NO_ASSERT   2
 
#define TEST_RESULT_SKIPPED   3
 
#define TEST_RESULT_SETUP_FAILURE   4
 

Typedefs

typedef void(* SDLTest_TestCaseSetUpFp) (void *arg)
 
typedef int(* SDLTest_TestCaseFp) (void *arg)
 
typedef void(* SDLTest_TestCaseTearDownFp) (void *arg)
 
typedef struct SDLTest_TestCaseReference SDLTest_TestCaseReference
 
typedef struct SDLTest_TestSuiteReference SDLTest_TestSuiteReference
 

Functions

char * SDLTest_GenerateRunSeed (const int length)
 Generates a random run seed string for the harness. The generated seed will contain alphanumeric characters (0-9A-Z). More...
 
int SDLTest_RunSuites (SDLTest_TestSuiteReference *testSuites[], const char *userRunSeed, Uint64 userExecKey, const char *filter, int testIterations)
 Execute a test suite using the given run seed and execution key. More...
 

Detailed Description

Include file for SDL test framework.

This code is a part of the SDL2_test library, not the main SDL library.

Definition in file SDL_test_harness.h.

Macro Definition Documentation

◆ TEST_ABORTED

#define TEST_ABORTED   -1

Definition at line 51 of file SDL_test_harness.h.

◆ TEST_COMPLETED

#define TEST_COMPLETED   1

Definition at line 53 of file SDL_test_harness.h.

◆ TEST_DISABLED

#define TEST_DISABLED   0

Definition at line 48 of file SDL_test_harness.h.

◆ TEST_ENABLED

#define TEST_ENABLED   1

Definition at line 47 of file SDL_test_harness.h.

◆ TEST_RESULT_FAILED

#define TEST_RESULT_FAILED   1

Definition at line 58 of file SDL_test_harness.h.

◆ TEST_RESULT_NO_ASSERT

#define TEST_RESULT_NO_ASSERT   2

Definition at line 59 of file SDL_test_harness.h.

◆ TEST_RESULT_PASSED

#define TEST_RESULT_PASSED   0

Definition at line 57 of file SDL_test_harness.h.

◆ TEST_RESULT_SETUP_FAILURE

#define TEST_RESULT_SETUP_FAILURE   4

Definition at line 61 of file SDL_test_harness.h.

◆ TEST_RESULT_SKIPPED

#define TEST_RESULT_SKIPPED   3

Definition at line 60 of file SDL_test_harness.h.

◆ TEST_SKIPPED

#define TEST_SKIPPED   2

Definition at line 54 of file SDL_test_harness.h.

◆ TEST_STARTED

#define TEST_STARTED   0

Definition at line 52 of file SDL_test_harness.h.

Typedef Documentation

◆ SDLTest_TestCaseFp

typedef int(* SDLTest_TestCaseFp) (void *arg)

Definition at line 67 of file SDL_test_harness.h.

◆ SDLTest_TestCaseReference

Holds information about a single test case.

◆ SDLTest_TestCaseSetUpFp

typedef void(* SDLTest_TestCaseSetUpFp) (void *arg)

Definition at line 64 of file SDL_test_harness.h.

◆ SDLTest_TestCaseTearDownFp

typedef void(* SDLTest_TestCaseTearDownFp) (void *arg)

Definition at line 70 of file SDL_test_harness.h.

◆ SDLTest_TestSuiteReference

Holds information about a test suite (multiple test cases).

Function Documentation

◆ SDLTest_GenerateRunSeed()

char* SDLTest_GenerateRunSeed ( const int  length)

Generates a random run seed string for the harness. The generated seed will contain alphanumeric characters (0-9A-Z).

Note: The returned string needs to be deallocated by the caller.

Parameters
lengthThe length of the seed string to generate
Returns
The generated seed string

◆ SDLTest_RunSuites()

int SDLTest_RunSuites ( SDLTest_TestSuiteReference testSuites[],
const char *  userRunSeed,
Uint64  userExecKey,
const char *  filter,
int  testIterations 
)

Execute a test suite using the given run seed and execution key.

Parameters
testSuitesSuites containing the test case.
userRunSeedCustom run seed provided by user, or NULL to autogenerate one.
userExecKeyCustom execution key provided by user, or 0 to autogenerate one.
filterFilter specification. NULL disables. Case sensitive.
testIterationsNumber of iterations to run each test case.
Returns
Test run result; 0 when all tests passed, 1 if any tests failed.