#ifndef SPROUT_LIBS_CSTRING_TEST_STRSTR_CPP #define SPROUT_LIBS_CSTRING_TEST_STRSTR_CPP #include #include #include namespace testspr { static void cstring_strstr_test() { using namespace sprout; { SPROUT_STATIC_CONSTEXPR char str[] = "abcdefghijklmn"; SPROUT_STATIC_CONSTEXPR char str1[] = "defgh"; SPROUT_STATIC_CONSTEXPR char str2[] = "xyz"; SPROUT_STATIC_CONSTEXPR char str3[] = "abcdefghijklmnopqr"; SPROUT_STATIC_CONSTEXPR char str4[] = ""; { SPROUT_STATIC_CONSTEXPR auto found = sprout::strstr(str, str1); TESTSPR_BOTH_ASSERT(sprout::distance(str, found) == 3); } { SPROUT_STATIC_CONSTEXPR auto found = sprout::strstr(str, str2); TESTSPR_BOTH_ASSERT(!found); } { SPROUT_STATIC_CONSTEXPR auto found = sprout::strstr(str, str3); TESTSPR_BOTH_ASSERT(!found); } { SPROUT_STATIC_CONSTEXPR auto found = sprout::strstr(str, str4); TESTSPR_BOTH_ASSERT(sprout::distance(str, found) == 0); } } } } // namespace testspr #ifndef TESTSPR_CPP_INCLUDE # define TESTSPR_TEST_FUNCTION testspr::cstring_strstr_test # include #endif #endif // #ifndef SPROUT_LIBS_CSTRING_TEST_STRSTR_CPP