diff --git a/test/Jamfile.v2 b/test/Jamfile.v2 index fb6d452..bb41d02 100644 --- a/test/Jamfile.v2 +++ b/test/Jamfile.v2 @@ -255,6 +255,7 @@ run sv_copy_test.cpp ; run sv_substr_test.cpp ; run sv_compare_test.cpp ; run sv_starts_with_test.cpp ; +run sv_ends_with_test.cpp ; use-project /boost/core/swap : ./swap ; build-project ./swap ; diff --git a/test/sv_ends_with_test.cpp b/test/sv_ends_with_test.cpp new file mode 100644 index 0000000..6c037ef --- /dev/null +++ b/test/sv_ends_with_test.cpp @@ -0,0 +1,50 @@ +// Copyright 2021 Peter Dimov +// Distributed under the Boost Software License, Version 1.0. +// https://www.boost.org/LICENSE_1_0.txt + +#include +#include +#include +#include + +int main() +{ + { + boost::core::string_view sv( "" ); + + BOOST_TEST( sv.ends_with( boost::core::string_view() ) ); + BOOST_TEST( sv.ends_with( boost::core::string_view( "" ) ) ); + BOOST_TEST( sv.ends_with( "" ) ); + + BOOST_TEST( !sv.ends_with( boost::core::string_view( "1" ) ) ); + BOOST_TEST( !sv.ends_with( '1' ) ); + BOOST_TEST( !sv.ends_with( "1" ) ); + } + + { + boost::core::string_view sv( "123" ); + + BOOST_TEST( sv.ends_with( boost::core::string_view() ) ); + BOOST_TEST( sv.ends_with( boost::core::string_view( "" ) ) ); + BOOST_TEST( sv.ends_with( "" ) ); + + BOOST_TEST( sv.ends_with( boost::core::string_view( "3" ) ) ); + BOOST_TEST( sv.ends_with( '3' ) ); + BOOST_TEST( sv.ends_with( "3" ) ); + + BOOST_TEST( sv.ends_with( boost::core::string_view( "23" ) ) ); + BOOST_TEST( sv.ends_with( "23" ) ); + + BOOST_TEST( sv.ends_with( boost::core::string_view( "123" ) ) ); + BOOST_TEST( sv.ends_with( "123" ) ); + + BOOST_TEST( !sv.ends_with( boost::core::string_view( "1234" ) ) ); + BOOST_TEST( !sv.ends_with( "1234" ) ); + + BOOST_TEST( !sv.ends_with( boost::core::string_view( "2" ) ) ); + BOOST_TEST( !sv.ends_with( '2' ) ); + BOOST_TEST( !sv.ends_with( "2" ) ); + } + + return boost::report_errors(); +}