2020-04-08 12:49:00 +02:00
|
|
|
#include <Platform.h> // Only use angled for Platform, else, xcode project won't compile
|
2020-02-23 12:21:28 +01:00
|
|
|
#include "../cpp_foundation/XStringW.h"
|
|
|
|
#include "../cpp_foundation/XArray.h"
|
|
|
|
#include "../cpp_foundation/XObjArray.h"
|
|
|
|
|
2020-03-28 16:14:18 +01:00
|
|
|
#include "../Platform/BasicIO.h" // for PauseForKey
|
2020-03-26 13:59:20 +01:00
|
|
|
|
2020-02-23 12:21:28 +01:00
|
|
|
#include "XArray_tests.h"
|
|
|
|
#include "XObjArray_tests.h"
|
2020-02-23 21:23:31 +01:00
|
|
|
#include "XStringWArray_test.h"
|
2020-03-12 15:40:38 +01:00
|
|
|
#include "XString_test.h"
|
2020-02-23 21:23:31 +01:00
|
|
|
#include "XStringW_test.h"
|
2020-03-13 14:11:58 +01:00
|
|
|
#include "strcmp_test.h"
|
|
|
|
#include "strncmp_test.h"
|
|
|
|
#include "strlen_test.h"
|
2020-03-21 14:12:26 +01:00
|
|
|
#include "printf_lite-test.h"
|
2020-04-05 14:25:39 +02:00
|
|
|
#include "LoadOptions_test.h"
|
2020-04-10 13:01:16 +02:00
|
|
|
|
|
|
|
#if defined(JIEF_DEBUG) && defined(CLOVER_BUILD)
|
|
|
|
#include "poolprint-test.h"
|
|
|
|
#include "printlib-test.h"
|
|
|
|
#endif
|
2020-02-23 12:21:28 +01:00
|
|
|
|
2020-04-08 12:49:00 +02:00
|
|
|
|
|
|
|
/* On macOS
|
|
|
|
* sizeof(long)=8
|
|
|
|
* sizeof(long long)=8
|
|
|
|
* sizeof(size_t)=8
|
|
|
|
*/
|
|
|
|
|
2020-02-23 12:21:28 +01:00
|
|
|
bool all_tests()
|
|
|
|
{
|
|
|
|
bool all_ok = true;
|
|
|
|
int ret;
|
|
|
|
|
2020-03-25 19:32:44 +01:00
|
|
|
#ifdef JIEF_DEBUG
|
2020-04-08 12:49:00 +02:00
|
|
|
// ret = XUINTN_tests();
|
|
|
|
// if ( ret != 0 ) {
|
|
|
|
// DebugLog(2, "XUINTN_tests() failed at test %d\n", ret);
|
|
|
|
// all_ok = false;
|
|
|
|
// }
|
2020-03-26 13:59:20 +01:00
|
|
|
#if defined(CLOVER_BUILD)
|
2020-04-10 13:01:16 +02:00
|
|
|
ret = printlib_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "printlib_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
|
|
|
ret = poolprint_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "poolprint_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
2020-03-26 13:59:20 +01:00
|
|
|
#endif
|
2020-03-25 19:32:44 +01:00
|
|
|
#endif
|
2020-03-27 09:29:38 +01:00
|
|
|
#ifndef _MSC_VER
|
2020-03-21 14:12:26 +01:00
|
|
|
ret = printf_lite_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "printf_lite_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
2020-03-27 09:29:38 +01:00
|
|
|
#endif
|
2020-03-21 14:12:26 +01:00
|
|
|
#ifdef JIEF_DEBUG
|
|
|
|
//return ret;
|
|
|
|
#endif
|
2020-03-13 14:11:58 +01:00
|
|
|
ret = strlen_tests();
|
|
|
|
if ( ret != 0 ) {
|
2020-04-05 14:25:39 +02:00
|
|
|
DebugLog(2, "strlen_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
|
|
|
ret = BootOptions_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "BootOptions_tests() failed at test %d\n", ret);
|
2020-03-13 14:11:58 +01:00
|
|
|
all_ok = false;
|
|
|
|
}
|
|
|
|
ret = strcmp_tests();
|
|
|
|
if ( ret != 0 ) {
|
2020-04-05 14:25:39 +02:00
|
|
|
DebugLog(2, "strcmp_tests() failed at test %d\n", ret);
|
2020-03-13 14:11:58 +01:00
|
|
|
all_ok = false;
|
|
|
|
}
|
|
|
|
ret = strncmp_tests();
|
|
|
|
if ( ret != 0 ) {
|
2020-04-05 14:25:39 +02:00
|
|
|
DebugLog(2, "strncmp_tests() failed at test %d\n", ret);
|
2020-03-13 14:11:58 +01:00
|
|
|
all_ok = false;
|
|
|
|
}
|
2020-02-23 12:21:28 +01:00
|
|
|
ret = XArray_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "XArray_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
|
|
|
ret = XObjArray_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "XObjArray_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
2020-03-27 09:29:38 +01:00
|
|
|
#ifndef _MSC_VER
|
2020-03-12 15:40:38 +01:00
|
|
|
ret = XString_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "XString_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
2020-02-23 21:23:31 +01:00
|
|
|
ret = XStringW_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "XStringW_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
2020-03-27 09:29:38 +01:00
|
|
|
#endif
|
2020-02-23 21:23:31 +01:00
|
|
|
ret = XStringWArray_tests();
|
|
|
|
if ( ret != 0 ) {
|
|
|
|
DebugLog(2, "XStringWArray_tests() failed at test %d\n", ret);
|
|
|
|
all_ok = false;
|
|
|
|
}
|
2020-04-08 12:49:00 +02:00
|
|
|
// ret = XUINTN_tests();
|
|
|
|
// if ( ret != 0 ) {
|
|
|
|
// DebugLog(2, "XUINTN_tests() failed at test %d\n", ret);
|
|
|
|
// all_ok = false;
|
|
|
|
// }
|
2020-02-23 12:21:28 +01:00
|
|
|
|
|
|
|
if ( !all_ok ) {
|
2020-02-23 21:23:31 +01:00
|
|
|
DebugLog(2, "A test failed\n");
|
2020-04-08 12:49:00 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
#if defined(JIEF_DEBUG)
|
2020-04-10 13:01:16 +02:00
|
|
|
if ( all_ok ) {
|
2020-04-08 12:49:00 +02:00
|
|
|
printf("All tests are ok\n");
|
|
|
|
}
|
2020-02-23 12:21:28 +01:00
|
|
|
#endif
|
2020-04-08 12:49:00 +02:00
|
|
|
|
|
|
|
#if defined(CLOVER_BUILD) && defined(JIEF_DEBUG)
|
2020-04-10 13:01:16 +02:00
|
|
|
if ( all_ok ) {
|
2020-04-08 12:49:00 +02:00
|
|
|
// PauseForKey(L"press");
|
|
|
|
}else{
|
|
|
|
PauseForKey(L"press");
|
2020-02-23 12:21:28 +01:00
|
|
|
}
|
2020-04-08 12:49:00 +02:00
|
|
|
#endif
|
|
|
|
|
2020-02-23 12:21:28 +01:00
|
|
|
return all_ok;
|
|
|
|
}
|