3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-05-10 01:05:47 +00:00

ensure that assertions within the unit tests are exercised in all build modes, remove special handling of SASSERT for release mode #1163

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-07-26 20:28:55 -07:00
parent 3f8b63f5a8
commit b1298d7bde
67 changed files with 1277 additions and 1285 deletions

View file

@ -26,11 +26,11 @@ static void tst_ ## NAME(int a, ext_numeral_kind ak, int expected_c, ext_numeral
scoped_mpq _a(m); \
m.set(_a, a); \
NAME(m, _a, ak); \
SASSERT(ak == expected_ck); \
ENSURE(ak == expected_ck); \
if (expected_ck == EN_NUMERAL) { \
scoped_mpq _expected_c(m); \
m.set(_expected_c, expected_c); \
SASSERT(m.eq(_a, _expected_c)); \
ENSURE(m.eq(_a, _expected_c)); \
} \
}
@ -45,11 +45,11 @@ static void FUN_NAME(int a, ext_numeral_kind ak, int b, ext_numeral_kind bk, int
m.set(_b, b); \
ext_numeral_kind ck; \
OP_NAME(m, _a, ak, _b, bk, _c, ck); \
SASSERT(ck == expected_ck); \
ENSURE(ck == expected_ck); \
if (expected_ck == EN_NUMERAL) { \
scoped_mpq _expected_c(m); \
m.set(_expected_c, expected_c); \
SASSERT(m.eq(_c, _expected_c)); \
ENSURE(m.eq(_c, _expected_c)); \
} \
}
@ -340,52 +340,52 @@ static void tst2() {
static void tst3() {
unsynch_mpq_manager m;
scoped_mpq a(m);
SASSERT(is_zero(m, a, EN_NUMERAL));
SASSERT(!is_zero(m, a, EN_PLUS_INFINITY));
SASSERT(!is_zero(m, a, EN_MINUS_INFINITY));
SASSERT(!is_pos(m, a, EN_NUMERAL));
SASSERT(is_pos(m, a, EN_PLUS_INFINITY));
SASSERT(!is_pos(m, a, EN_MINUS_INFINITY));
SASSERT(!is_infinite(EN_NUMERAL));
SASSERT(is_infinite(EN_PLUS_INFINITY));
SASSERT(is_infinite(EN_MINUS_INFINITY));
SASSERT(!is_neg(m, a, EN_NUMERAL));
SASSERT(!is_neg(m, a, EN_PLUS_INFINITY));
SASSERT(is_neg(m, a, EN_MINUS_INFINITY));
ENSURE(is_zero(m, a, EN_NUMERAL));
ENSURE(!is_zero(m, a, EN_PLUS_INFINITY));
ENSURE(!is_zero(m, a, EN_MINUS_INFINITY));
ENSURE(!is_pos(m, a, EN_NUMERAL));
ENSURE(is_pos(m, a, EN_PLUS_INFINITY));
ENSURE(!is_pos(m, a, EN_MINUS_INFINITY));
ENSURE(!is_infinite(EN_NUMERAL));
ENSURE(is_infinite(EN_PLUS_INFINITY));
ENSURE(is_infinite(EN_MINUS_INFINITY));
ENSURE(!is_neg(m, a, EN_NUMERAL));
ENSURE(!is_neg(m, a, EN_PLUS_INFINITY));
ENSURE(is_neg(m, a, EN_MINUS_INFINITY));
m.set(a, 10);
SASSERT(!is_zero(m, a, EN_NUMERAL));
SASSERT(is_pos(m, a, EN_NUMERAL));
SASSERT(!is_neg(m, a, EN_NUMERAL));
SASSERT(!is_infinite(EN_NUMERAL));
ENSURE(!is_zero(m, a, EN_NUMERAL));
ENSURE(is_pos(m, a, EN_NUMERAL));
ENSURE(!is_neg(m, a, EN_NUMERAL));
ENSURE(!is_infinite(EN_NUMERAL));
m.set(a, -5);
SASSERT(!is_zero(m, a, EN_NUMERAL));
SASSERT(!is_pos(m, a, EN_NUMERAL));
SASSERT(is_neg(m, a, EN_NUMERAL));
SASSERT(!is_infinite(EN_NUMERAL));
ENSURE(!is_zero(m, a, EN_NUMERAL));
ENSURE(!is_pos(m, a, EN_NUMERAL));
ENSURE(is_neg(m, a, EN_NUMERAL));
ENSURE(!is_infinite(EN_NUMERAL));
ext_numeral_kind ak;
ak = EN_MINUS_INFINITY;
reset(m, a, ak);
SASSERT(is_zero(m, a, EN_NUMERAL));
ENSURE(is_zero(m, a, EN_NUMERAL));
{
std::ostringstream buffer;
display(buffer, m, a, ak);
SASSERT(buffer.str() == "0");
ENSURE(buffer.str() == "0");
}
{
std::ostringstream buffer;
m.set(a, -10);
display(buffer, m, a, ak);
SASSERT(buffer.str() == "-10");
ENSURE(buffer.str() == "-10");
}
{
std::ostringstream buffer;
display(buffer, m, a, EN_PLUS_INFINITY);
SASSERT(buffer.str() == "+oo");
ENSURE(buffer.str() == "+oo");
}
{
std::ostringstream buffer;
display(buffer, m, a, EN_MINUS_INFINITY);
SASSERT(buffer.str() == "-oo");
ENSURE(buffer.str() == "-oo");
}
}