Arbutils/tests/AssertTests.cpp

25 lines
819 B
C++
Raw Normal View History

2020-03-22 10:14:47 +00:00
#include "../extern/catch.hpp"
#include "../src/Assert.hpp"
void TestWrapper(bool wrapperExpression){Assert(wrapperExpression)}
2020-03-22 10:41:55 +00:00
void TestWrapperNotNull(void* value){AssertNotNull(value)}
2020-03-22 10:14:47 +00:00
TEST_CASE("Assert succeeds if true", "[Utilities]") {
REQUIRE_NOTHROW(TestWrapper(true));
}
TEST_CASE("Assert throws if false", "[Utilities]") { REQUIRE_THROWS(TestWrapper(false)); }
TEST_CASE("Assert throws if false with message", "[Utilities]") {
REQUIRE_THROWS_WITH(TestWrapper(false),
Catch::Matchers::Equals("ASSERTION FAILED: [AssertTests.cpp (3)] \"wrapperExpression\""));
}
2020-03-22 10:41:55 +00:00
2020-03-22 11:02:02 +00:00
TEST_CASE("Multiple asserts", "[Utilities]") {
Assert(true);
Assert(true);
Assert(true);
}
2020-03-22 10:41:55 +00:00
TEST_CASE("AssertNotNull throws if nullptr", "[Utilities]") { REQUIRE_THROWS(TestWrapperNotNull(nullptr)); }