def METHOD_NAME(self):
    # The wrapper replaces the include paths and runs until EOF.
    os.mkdir("bazel-out")
    os.symlink("WORKSPACE", "symlink-in-workspace")
    os.symlink("/dev/null", "symlink-outside-workspace")
    os.symlink("../WORKSPACE", "bazel-out/symlink")
    print(subprocess.check_output(["ls", "-lR"]))
    bold = "\x1b[0m\x1b[1m"  # ANSI escape codes (pretty!).
    original_lines = [
        "stuff",
        "In file included from symlink-in-workspace",
        "In file included from symlink-outside-workspace",
        "bazel-out/symlink:1",
        "stuff/bazel-out/symlink:2",
        bold + "bazel-out/symlink:3",
    ]
    edited_lines = [
        "stuff",
        "In file included from WORKSPACE",
        "In file included from symlink-outside-workspace",
        "WORKSPACE:1",
        "stuff/WORKSPACE:2",
        bold + "WORKSPACE:3",
    ]
    self._bazel_subprocess_mock.stderr = io.BytesIO(
        "\n".join(original_lines).encode("utf-8"))
    argv = ["bazel", "dummy_arg"]
    with self.assertRaises(SystemExit) as detail:
        self._do_main(argv)
    self.assertEqual(
        detail.exception.code,
        self._bazel_subprocess_mock.returncode)
    self.assertSequenceEqual(
        self._bazel_subprocess_actions,
        ["terminate", "wait"])
    for orig, edit in zip(edited_lines,
                          self._stderr.decode("utf-8").splitlines()):
        self.assertEqual(orig, edit)