85 lines
1.9 KiB
C++
85 lines
1.9 KiB
C++
|
#include <pch.h>
|
||
|
#pragma hdrstop
|
||
|
|
||
|
//---[ prototypes ]------------------------------------------------------------
|
||
|
|
||
|
void TestAssert();
|
||
|
void TestSideAssert();
|
||
|
void TestAssertSz();
|
||
|
void TestSideAssertSz();
|
||
|
|
||
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Function: main
|
||
|
//
|
||
|
// Purpose: Entrypoint for the unit test. Calls all of the sub-tests
|
||
|
//
|
||
|
// Arguments:
|
||
|
// (none)
|
||
|
//
|
||
|
// Returns:
|
||
|
//
|
||
|
// Author: jeffspr 3 Sep 1997
|
||
|
//
|
||
|
// Notes:
|
||
|
//
|
||
|
void _cdecl main()
|
||
|
{
|
||
|
printf("\n\nUnit test for (netcfg)\\common\\debug ");
|
||
|
|
||
|
#ifdef _DBG
|
||
|
printf("[debug build]\n\n");
|
||
|
#else
|
||
|
printf("[release build]\n\n");
|
||
|
#endif
|
||
|
|
||
|
TestAssert();
|
||
|
TestAssertSz();
|
||
|
TestSideAssert();
|
||
|
TestSideAssertSz();
|
||
|
}
|
||
|
|
||
|
void TestAssert()
|
||
|
{
|
||
|
Assert(TRUE); // This should succeed
|
||
|
Assert(FALSE); // This should fail
|
||
|
}
|
||
|
|
||
|
void TestAssertSz()
|
||
|
{
|
||
|
AssertSz(TRUE, "This should not have asserted");
|
||
|
AssertSz(FALSE, "This assert is expected on debug builds");
|
||
|
}
|
||
|
|
||
|
void TestSideAssert()
|
||
|
{
|
||
|
BOOL fTest = FALSE;
|
||
|
|
||
|
printf("Pre-call value of fTest : %d\n", fTest);
|
||
|
|
||
|
SideAssert(fTest = TRUE); // This should not fire
|
||
|
|
||
|
printf("Post-call-#1 value of fTest: %d (should be TRUE)\n", fTest);
|
||
|
|
||
|
SideAssert(fTest = FALSE); // This should assert on Debug
|
||
|
|
||
|
printf("Post-call-#2 value of fTest: %d (should be FALSE, Asserted in DEBUG builds)\n", fTest);
|
||
|
}
|
||
|
|
||
|
void TestSideAssertSz()
|
||
|
{
|
||
|
BOOL fTest = FALSE;
|
||
|
|
||
|
printf("Pre-call value of fTest : %d\n", fTest);
|
||
|
|
||
|
SideAssertSz(fTest = TRUE, "This assert should not have fired"); // This should not fire
|
||
|
|
||
|
printf("Post-call-#1 value of fTest: %d (should be TRUE)\n", fTest);
|
||
|
|
||
|
SideAssertSz(fTest = FALSE, "This assert should have fired in DEBUG mode only"); // This should assert on Debug
|
||
|
|
||
|
printf("Post-call-#2 value of fTest: %d (should be FALSE, Asserted in DEBUG builds)\n", fTest);
|
||
|
|
||
|
}
|
||
|
|