diff --git a/CHANGELOG.md b/CHANGELOG.md index d3c2341181632776de35cd90c3ee59e089e85f83..caa7c5f5db9d825da0e4d4729b465ade237e4493 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,8 @@ ## Future releases - More `ASSERT_*` macros - Deprecate `END_TEST` and get rid of `add_test` and change `TEST` impl +## 0.2.0-alpha.0 +- added `CHAR_PTR_ASSERT_EQ` for comparing `char*` (via `std::strcmp`) ## 0.1.2 - fixed bug in ASSERT_EQ ## 0.1.1 diff --git a/dist/litefprocut.tar.gz b/dist/litefprocut.tar.gz index 1b62f03b3ab322e3acfdae5f556ab424284d8e39..763a25982af1357c97a1569d90e72f346ce65a6b 100644 Binary files a/dist/litefprocut.tar.gz and b/dist/litefprocut.tar.gz differ diff --git a/dist/litefprocut/macros.hpp b/dist/litefprocut/macros.hpp index 99d30cecb7e6f4ff3972abab43c60b9eb7a4ea44..7e8da7b5bd975ffd78745405b099f9f8d550a89b 100644 --- a/dist/litefprocut/macros.hpp +++ b/dist/litefprocut/macros.hpp @@ -3,10 +3,24 @@ #include<iostream> +// In near future: +// TEST(name, fname_var) +// ... +// END_TEST +// ? #define TEST(name, fname_var)\ litefprocut::add_test(fname_var, #name, [argv](const std::string& content) #define END_TEST \ ); +#define CHAR_PTR_ASSERT_EQ(lhs, rhs)\ +if(std::strcmp(lhs, rhs) != 0)\ +{\ + std::cerr << "\e[31mAssertion failed:\n\e[0m";\ + std::cerr << "\e[31m\tExpected: " << rhs << "\n\e[0m";\ + std::cerr << "\e[31m\tActual: " << lhs << "\n\e[0m";\ + ++litefprocut::this_test.failed;\ +}\ +else ++litefprocut::this_test.passed; #define ASSERT_EQ(lhs, rhs)\ if((lhs) != (rhs))\ {\ diff --git a/include/macros.hpp b/include/macros.hpp index 99d30cecb7e6f4ff3972abab43c60b9eb7a4ea44..7e8da7b5bd975ffd78745405b099f9f8d550a89b 100644 --- a/include/macros.hpp +++ b/include/macros.hpp @@ -3,10 +3,24 @@ #include<iostream> +// In near future: +// TEST(name, fname_var) +// ... +// END_TEST +// ? #define TEST(name, fname_var)\ litefprocut::add_test(fname_var, #name, [argv](const std::string& content) #define END_TEST \ ); +#define CHAR_PTR_ASSERT_EQ(lhs, rhs)\ +if(std::strcmp(lhs, rhs) != 0)\ +{\ + std::cerr << "\e[31mAssertion failed:\n\e[0m";\ + std::cerr << "\e[31m\tExpected: " << rhs << "\n\e[0m";\ + std::cerr << "\e[31m\tActual: " << lhs << "\n\e[0m";\ + ++litefprocut::this_test.failed;\ +}\ +else ++litefprocut::this_test.passed; #define ASSERT_EQ(lhs, rhs)\ if((lhs) != (rhs))\ {\