| 34 | namespace re2 { |
| 35 | |
| 36 | void Test() { |
| 37 | Regexp* re = Regexp::Parse("(\\d+)-(\\d+)-(\\d+)", Regexp::LikePerl, NULL); |
| 38 | CHECK(re); |
| 39 | Prog* prog = re->CompileToProg(0); |
| 40 | CHECK(prog); |
| 41 | CHECK(prog->IsOnePass()); |
| 42 | CHECK(prog->CanBitState()); |
| 43 | const char* text = "650-253-0001"; |
| 44 | StringPiece sp[4]; |
| 45 | CHECK(prog->SearchOnePass(text, text, Prog::kAnchored, Prog::kFullMatch, sp, 4)); |
| 46 | CHECK_EQ(sp[0], "650-253-0001"); |
| 47 | CHECK_EQ(sp[1], "650"); |
| 48 | CHECK_EQ(sp[2], "253"); |
| 49 | CHECK_EQ(sp[3], "0001"); |
| 50 | delete prog; |
| 51 | re->Decref(); |
| 52 | LOG(INFO) << "test passed\n"; |
| 53 | } |
| 54 | |
| 55 | void MemoryUsage() { |
| 56 | const char* regexp = "(\\d+)-(\\d+)-(\\d+)"; |
nothing calls this directly
no test coverage detected