| Index: third_party/re2/re2/testing/regexp_test.cc
|
| diff --git a/third_party/re2/re2/testing/regexp_test.cc b/third_party/re2/re2/testing/regexp_test.cc
|
| deleted file mode 100644
|
| index 31c76a3bf959a74d9397bc2e7edcd0a03f733c8d..0000000000000000000000000000000000000000
|
| --- a/third_party/re2/re2/testing/regexp_test.cc
|
| +++ /dev/null
|
| @@ -1,82 +0,0 @@
|
| -// Copyright 2006 The RE2 Authors. All Rights Reserved.
|
| -// Use of this source code is governed by a BSD-style
|
| -// license that can be found in the LICENSE file.
|
| -
|
| -// Test parse.cc, dump.cc, and tostring.cc.
|
| -
|
| -#include <string>
|
| -#include <vector>
|
| -#include "util/test.h"
|
| -#include "re2/regexp.h"
|
| -
|
| -namespace re2 {
|
| -
|
| -// Test that overflowed ref counts work.
|
| -TEST(Regexp, BigRef) {
|
| - Regexp* re;
|
| - re = Regexp::Parse("x", Regexp::NoParseFlags, NULL);
|
| - for (int i = 0; i < 100000; i++)
|
| - re->Incref();
|
| - for (int i = 0; i < 100000; i++)
|
| - re->Decref();
|
| - CHECK_EQ(re->Ref(), 1);
|
| - re->Decref();
|
| -}
|
| -
|
| -// Test that very large Concats work.
|
| -// Depends on overflowed ref counts working.
|
| -TEST(Regexp, BigConcat) {
|
| - Regexp* x;
|
| - x = Regexp::Parse("x", Regexp::NoParseFlags, NULL);
|
| - vector<Regexp*> v(90000, x); // ToString bails out at 100000
|
| - for (size_t i = 0; i < v.size(); i++)
|
| - x->Incref();
|
| - CHECK_EQ(x->Ref(), 1 + static_cast<int>(v.size())) << x->Ref();
|
| - Regexp* re = Regexp::Concat(v.data(), static_cast<int>(v.size()),
|
| - Regexp::NoParseFlags);
|
| - CHECK_EQ(re->ToString(), string(v.size(), 'x'));
|
| - re->Decref();
|
| - CHECK_EQ(x->Ref(), 1) << x->Ref();
|
| - x->Decref();
|
| -}
|
| -
|
| -TEST(Regexp, NamedCaptures) {
|
| - Regexp* x;
|
| - RegexpStatus status;
|
| - x = Regexp::Parse(
|
| - "(?P<g1>a+)|(e)(?P<g2>w*)+(?P<g1>b+)", Regexp::PerlX, &status);
|
| - EXPECT_TRUE(status.ok());
|
| - EXPECT_EQ(4, x->NumCaptures());
|
| - const map<string, int>* have = x->NamedCaptures();
|
| - EXPECT_TRUE(have != NULL);
|
| - EXPECT_EQ(2, have->size()); // there are only two named groups in
|
| - // the regexp: 'g1' and 'g2'.
|
| - map<string, int> want;
|
| - want["g1"] = 1;
|
| - want["g2"] = 3;
|
| - EXPECT_EQ(want, *have);
|
| - x->Decref();
|
| - delete have;
|
| -}
|
| -
|
| -TEST(Regexp, CaptureNames) {
|
| - Regexp* x;
|
| - RegexpStatus status;
|
| - x = Regexp::Parse(
|
| - "(?P<g1>a+)|(e)(?P<g2>w*)+(?P<g1>b+)", Regexp::PerlX, &status);
|
| - EXPECT_TRUE(status.ok());
|
| - EXPECT_EQ(4, x->NumCaptures());
|
| - const map<int, string>* have = x->CaptureNames();
|
| - EXPECT_TRUE(have != NULL);
|
| - EXPECT_EQ(3, have->size());
|
| - map<int, string> want;
|
| - want[1] = "g1";
|
| - want[3] = "g2";
|
| - want[4] = "g1";
|
| -
|
| - EXPECT_EQ(want, *have);
|
| - x->Decref();
|
| - delete have;
|
| -}
|
| -
|
| -} // namespace re2
|
|
|