Commit 9c2a3c1b authored by knowledge4igor's avatar knowledge4igor

Fix rfind and more tests

parent 04f9bc89
......@@ -114,6 +114,8 @@ namespace std {
size_type rfind(string_view v, size_type pos = npos) const noexcept {
if (v.size_ <= size_) {
if (pos > size_)
pos = size_;
size_t start = size_ - v.size_;
if (pos != npos)
start = pos;
......
......@@ -77,6 +77,12 @@ TEST(string_view_test, rfind_test_2) {
ASSERT_EQ(orig4.rfind(find4), std::size_t(0));
ASSERT_EQ(orig4.rfind(find4, 1), std::size_t(0));
std::string_view orig5 ("a");
std::string_view find5 ("b");
ASSERT_EQ(orig5.rfind(find5), std::size_t(-1));
ASSERT_EQ(orig5.rfind(find5, 4), std::size_t(-1));
}
TEST(string_view_test, emptiness) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment