diff options
Diffstat (limited to 'libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp')
| -rw-r--r-- | libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp | 47 |
1 files changed, 31 insertions, 16 deletions
diff --git a/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp b/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp index 13ddec7373c..206ea3524d1 100644 --- a/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp +++ b/libcxx/test/re/re.alg/re.alg.search/basic.pass.cpp @@ -104,24 +104,39 @@ int main() } { std::cmatch m; - const char s[] = "abcdefghijk"; - assert(std::regex_search(s, m, std::regex("cd\\(\\(e\\)fg\\)hi", - std::regex_constants::basic))); - assert(m.size() == 3); - assert(m.prefix().matched); + const char s[] = "abbc"; + assert(std::regex_search(s, m, std::regex("ab*c", std::regex_constants::basic))); + assert(m.size() == 1); + assert(!m.prefix().matched); assert(m.prefix().first == s); assert(m.prefix().second == m[0].first); - assert(m.suffix().matched); + assert(!m.suffix().matched); assert(m.suffix().first == m[0].second); - assert(m.suffix().second == s+std::regex_traits<char>::length(s)); - assert(m.length(0) == 7); - assert(m.position(0) == 2); - assert(m.str(0) == "cdefghi"); - assert(m.length(1) == 3); - assert(m.position(1) == 4); - assert(m.str(1) == "efg"); - assert(m.length(2) == 1); - assert(m.position(2) == 4); - assert(m.str(2) == "e"); + assert(m.suffix().second == s+4); + assert(m.length(0) == 4); + assert(m.position(0) == 0); + assert(m.str(0) == s); } +// { +// std::cmatch m; +// const char s[] = "abcdefghijk"; +// assert(std::regex_search(s, m, std::regex("cd\\(\\(e\\)fg\\)hi", +// std::regex_constants::basic))); +// assert(m.size() == 3); +// assert(m.prefix().matched); +// assert(m.prefix().first == s); +// assert(m.prefix().second == m[0].first); +// assert(m.suffix().matched); +// assert(m.suffix().first == m[0].second); +// assert(m.suffix().second == s+std::regex_traits<char>::length(s)); +// assert(m.length(0) == 7); +// assert(m.position(0) == 2); +// assert(m.str(0) == "cdefghi"); +// assert(m.length(1) == 3); +// assert(m.position(1) == 4); +// assert(m.str(1) == "efg"); +// assert(m.length(2) == 1); +// assert(m.position(2) == 4); +// assert(m.str(2) == "e"); +// } } |

