26 lines
778 B
C++
26 lines
778 B
C++
#include "EterBase/StdAfx.h"
|
|
#include "EterBase/Utils.h"
|
|
|
|
#include <cstdio>
|
|
|
|
int main()
|
|
{
|
|
int failures = 0;
|
|
auto check = [&failures](bool ok, const char *name) {
|
|
if (!ok) {
|
|
std::fprintf(stderr, "FAIL %s\n", name);
|
|
++failures;
|
|
}
|
|
};
|
|
check(MIN(-3, 8) == -3 && MIN(8, -3) == -3, "MIN order/sign");
|
|
check(MAX(-3, 8) == 8 && MAX(8, -3) == 8, "MAX order/sign");
|
|
check(MINMAX(2, -5, 9) == 2, "MINMAX lower");
|
|
check(MINMAX(2, 20, 9) == 9, "MINMAX upper");
|
|
check(MINMAX(9, 4, 2) == 9, "MINMAX reversed bounds");
|
|
check(fMIN(-3.5f, 8.5f) == -3.5f, "fMIN sign");
|
|
check(fMAX(200.0f, 0.0f) == 200.0f, "fMAX camera floor");
|
|
check(fMINMAX(2.0f, -5.0f, 9.0f) == 2.0f, "fMINMAX lower");
|
|
check(fMINMAX(2.0f, 20.0f, 9.0f) == 9.0f, "fMINMAX upper");
|
|
return failures ? 1 : 0;
|
|
}
|