summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMichael Pratt <mpratt@google.com>2019-04-09 16:25:03 -0700
committerShentubot <shentubot@google.com>2019-04-09 16:26:11 -0700
commit0e14e48b84fd8f759bb5a0f5261cdb090d1ffe90 (patch)
tree0084ac6e647f4d7ffb1f5445574a33a62bca4ebb
parentb3b140ea4f9e1b632463cbf83c97f58464eceeac (diff)
Match multi-word State
From a recent test failure: "State:\tD (disk sleep)\n" "disk sleep" does not match \w+. We need to allow spaces. PiperOrigin-RevId: 242762469 Change-Id: Ic8d05a16669412a72c1e76b498373e5b22fe64c4
-rw-r--r--test/syscalls/linux/proc.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/test/syscalls/linux/proc.cc b/test/syscalls/linux/proc.cc
index 337d9e3f4..2da7006cf 100644
--- a/test/syscalls/linux/proc.cc
+++ b/test/syscalls/linux/proc.cc
@@ -99,8 +99,11 @@ std::vector<std::string> saved_argv; // NOLINT
void CompareProcessState(absl::string_view state, int pid) {
auto status_file = ASSERT_NO_ERRNO_AND_VALUE(
GetContents(absl::StrCat("/proc/", pid, "/status")));
- EXPECT_THAT(status_file, ContainsRegex(absl::StrCat("State:.[", state,
- "]\\s+\\(\\w+\\)")));
+ // N.B. POSIX extended regexes don't support shorthand character classes (\w)
+ // inside of brackets.
+ EXPECT_THAT(status_file,
+ ContainsRegex(absl::StrCat("State:.[", state,
+ R"EOL(]\s+\([a-zA-Z ]+\))EOL")));
}
// Run callbacks while a subprocess is running, zombied, and/or exited.