shell tests: use Bazel-embedded Bash runfiles lib

Use the Bash runfiles library under @bazel_tools,
do not depend on it from source.

RELNOTES: none
PiperOrigin-RevId: 206312278
diff --git a/src/test/shell/BUILD b/src/test/shell/BUILD
index bf86e83..ee0a295 100644
--- a/src/test/shell/BUILD
+++ b/src/test/shell/BUILD
@@ -30,11 +30,9 @@
 sh_test(
     name = "bashunit_test",
     srcs = ["unittest_test.sh"],
-    data = [":bashunit"],
-    deps = [
-        # TODO(laszlocsomor): Change this to @bazel_tools//tools/bash/runfiles
-        # after Bazel is released with that target in @bazel_tools.
-        "//tools/bash/runfiles:runfiles_lib",
+    data = [
+        ":bashunit",
+        "@bazel_tools//tools/bash/runfiles",
     ],
 )
 
@@ -51,12 +49,7 @@
         "testenv.sh",
         ":bashunit",
         ":shell_utils",
-    ],
-    deps = [
-        # TODO(laszlocsomor): Change this to @bazel_tools//tools/bash/runfiles
-        # after Bazel is released and this target exists, and remove the
-        # visibility from //tools/bash/runfiles:runfiles_lib
-        "//tools/bash/runfiles:runfiles_lib",
+        "@bazel_tools//tools/bash/runfiles",
     ],
 )
 
@@ -67,16 +60,11 @@
         "testenv.sh",
         ":bashunit",
         ":shell_utils",
+        "@bazel_tools//tools/bash/runfiles",
     ],
     tags = [
         "no_windows",  # test asserts symlink behavior
     ],
-    deps = [
-        # TODO(laszlocsomor): Change this to @bazel_tools//tools/bash/runfiles
-        # after Bazel is released and this target exists, and remove the
-        # visibility from //tools/bash/runfiles:runfiles_lib
-        "//tools/bash/runfiles:runfiles_lib",
-    ],
 )
 
 test_suite(
diff --git a/src/test/shell/shell_utils_symlinks_test.sh b/src/test/shell/shell_utils_symlinks_test.sh
index dc822ac..9617320 100755
--- a/src/test/shell/shell_utils_symlinks_test.sh
+++ b/src/test/shell/shell_utils_symlinks_test.sh
@@ -16,32 +16,32 @@
 #
 # This test exercises Bash utility implementations.
 
-set -euo pipefail
 # --- begin runfiles.bash initialization ---
+set -euo pipefail
 if [[ ! -d "${RUNFILES_DIR:-/dev/null}" && ! -f "${RUNFILES_MANIFEST_FILE:-/dev/null}" ]]; then
-    if [[ -f "$0.runfiles_manifest" ]]; then
-      export RUNFILES_MANIFEST_FILE="$0.runfiles_manifest"
-    elif [[ -f "$0.runfiles/MANIFEST" ]]; then
-      export RUNFILES_MANIFEST_FILE="$0.runfiles/MANIFEST"
-    elif [[ -f "$0.runfiles/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-      export RUNFILES_DIR="$0.runfiles"
-    elif [[ -f "$TEST_SRCDIR/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-      export RUNFILES_DIR="$TEST_SRCDIR"
-    fi
+  if [[ -f "$0.runfiles_manifest" ]]; then
+    export RUNFILES_MANIFEST_FILE="$0.runfiles_manifest"
+  elif [[ -f "$0.runfiles/MANIFEST" ]]; then
+    export RUNFILES_MANIFEST_FILE="$0.runfiles/MANIFEST"
+  elif [[ -f "$0.runfiles/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+    export RUNFILES_DIR="$0.runfiles"
+  fi
 fi
-if [[ -f "${RUNFILES_DIR:-/dev/null}/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-  source "${RUNFILES_DIR}/io_bazel/tools/bash/runfiles/runfiles.bash"
+if [[ -f "${RUNFILES_DIR:-/dev/null}/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+  source "${RUNFILES_DIR}/bazel_tools/tools/bash/runfiles/runfiles.bash"
 elif [[ -f "${RUNFILES_MANIFEST_FILE:-/dev/null}" ]]; then
-  source "$(grep -m1 "^io_bazel/tools/bash/runfiles/runfiles.bash " \
+  source "$(grep -m1 "^bazel_tools/tools/bash/runfiles/runfiles.bash " \
             "$RUNFILES_MANIFEST_FILE" | cut -d ' ' -f 2-)"
 else
-  echo >&2 "ERROR: cannot find //tools/bash/runfiles:runfiles.bash"
+  echo >&2 "ERROR: cannot find @bazel_tools//tools/bash/runfiles:runfiles.bash"
   exit 1
 fi
 # --- end runfiles.bash initialization ---
 
-source "$(rlocation "io_bazel/src/test/shell/unittest.bash")" || { echo "Could not source unittest.bash" >&2; exit 1; }
-source "$(rlocation "io_bazel/src/test/shell/shell_utils.sh")" || { echo "Could not source shell_utils.sh" >&2; exit 1; }
+source "$(rlocation "io_bazel/src/test/shell/unittest.bash")" \
+  || { echo "Could not source unittest.bash" >&2; exit 1; }
+source "$(rlocation "io_bazel/src/test/shell/shell_utils.sh")" \
+  || { echo "Could not source shell_utils.sh" >&2; exit 1; }
 
 cd "$TEST_TMPDIR"
 
diff --git a/src/test/shell/shell_utils_test.sh b/src/test/shell/shell_utils_test.sh
index daf1e8a..fb9d1aa 100755
--- a/src/test/shell/shell_utils_test.sh
+++ b/src/test/shell/shell_utils_test.sh
@@ -16,32 +16,32 @@
 #
 # This test exercises Bash utility implementations.
 
-set -euo pipefail
 # --- begin runfiles.bash initialization ---
+set -euo pipefail
 if [[ ! -d "${RUNFILES_DIR:-/dev/null}" && ! -f "${RUNFILES_MANIFEST_FILE:-/dev/null}" ]]; then
-    if [[ -f "$0.runfiles_manifest" ]]; then
-      export RUNFILES_MANIFEST_FILE="$0.runfiles_manifest"
-    elif [[ -f "$0.runfiles/MANIFEST" ]]; then
-      export RUNFILES_MANIFEST_FILE="$0.runfiles/MANIFEST"
-    elif [[ -f "$0.runfiles/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-      export RUNFILES_DIR="$0.runfiles"
-    elif [[ -f "$TEST_SRCDIR/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-      export RUNFILES_DIR="$TEST_SRCDIR"
-    fi
+  if [[ -f "$0.runfiles_manifest" ]]; then
+    export RUNFILES_MANIFEST_FILE="$0.runfiles_manifest"
+  elif [[ -f "$0.runfiles/MANIFEST" ]]; then
+    export RUNFILES_MANIFEST_FILE="$0.runfiles/MANIFEST"
+  elif [[ -f "$0.runfiles/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+    export RUNFILES_DIR="$0.runfiles"
+  fi
 fi
-if [[ -f "${RUNFILES_DIR:-/dev/null}/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-  source "${RUNFILES_DIR}/io_bazel/tools/bash/runfiles/runfiles.bash"
+if [[ -f "${RUNFILES_DIR:-/dev/null}/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+  source "${RUNFILES_DIR}/bazel_tools/tools/bash/runfiles/runfiles.bash"
 elif [[ -f "${RUNFILES_MANIFEST_FILE:-/dev/null}" ]]; then
-  source "$(grep -m1 "^io_bazel/tools/bash/runfiles/runfiles.bash " \
+  source "$(grep -m1 "^bazel_tools/tools/bash/runfiles/runfiles.bash " \
             "$RUNFILES_MANIFEST_FILE" | cut -d ' ' -f 2-)"
 else
-  echo >&2 "ERROR: cannot find //tools/bash/runfiles:runfiles.bash"
+  echo >&2 "ERROR: cannot find @bazel_tools//tools/bash/runfiles:runfiles.bash"
   exit 1
 fi
 # --- end runfiles.bash initialization ---
 
-source "$(rlocation "io_bazel/src/test/shell/unittest.bash")" || { echo "Could not source unittest.bash" >&2; exit 1; }
-source "$(rlocation "io_bazel/src/test/shell/shell_utils.sh")" || { echo "Could not source shell_utils.sh" >&2; exit 1; }
+source "$(rlocation "io_bazel/src/test/shell/unittest.bash")" \
+  || { echo "Could not source unittest.bash" >&2; exit 1; }
+source "$(rlocation "io_bazel/src/test/shell/shell_utils.sh")" \
+  || { echo "Could not source shell_utils.sh" >&2; exit 1; }
 
 cd "$TEST_TMPDIR"
 
diff --git a/src/test/shell/unittest_test.sh b/src/test/shell/unittest_test.sh
index ecca241..50baf55 100755
--- a/src/test/shell/unittest_test.sh
+++ b/src/test/shell/unittest_test.sh
@@ -17,31 +17,30 @@
 # - a sanity check that unittest.bash is syntactically valid
 # - and a means to run some quick experiments
 
-set -euo pipefail
 # --- begin runfiles.bash initialization ---
+set -euo pipefail
 if [[ ! -d "${RUNFILES_DIR:-/dev/null}" && ! -f "${RUNFILES_MANIFEST_FILE:-/dev/null}" ]]; then
-    if [[ -f "$0.runfiles_manifest" ]]; then
-      export RUNFILES_MANIFEST_FILE="$0.runfiles_manifest"
-    elif [[ -f "$0.runfiles/MANIFEST" ]]; then
-      export RUNFILES_MANIFEST_FILE="$0.runfiles/MANIFEST"
-    elif [[ -f "$0.runfiles/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-      export RUNFILES_DIR="$0.runfiles"
-    elif [[ -f "$TEST_SRCDIR/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-      export RUNFILES_DIR="$TEST_SRCDIR"
-    fi
+  if [[ -f "$0.runfiles_manifest" ]]; then
+    export RUNFILES_MANIFEST_FILE="$0.runfiles_manifest"
+  elif [[ -f "$0.runfiles/MANIFEST" ]]; then
+    export RUNFILES_MANIFEST_FILE="$0.runfiles/MANIFEST"
+  elif [[ -f "$0.runfiles/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+    export RUNFILES_DIR="$0.runfiles"
+  fi
 fi
-if [[ -f "${RUNFILES_DIR:-/dev/null}/io_bazel/tools/bash/runfiles/runfiles.bash" ]]; then
-  source "${RUNFILES_DIR}/io_bazel/tools/bash/runfiles/runfiles.bash"
+if [[ -f "${RUNFILES_DIR:-/dev/null}/bazel_tools/tools/bash/runfiles/runfiles.bash" ]]; then
+  source "${RUNFILES_DIR}/bazel_tools/tools/bash/runfiles/runfiles.bash"
 elif [[ -f "${RUNFILES_MANIFEST_FILE:-/dev/null}" ]]; then
-  source "$(grep -m1 "^io_bazel/tools/bash/runfiles/runfiles.bash " \
+  source "$(grep -m1 "^bazel_tools/tools/bash/runfiles/runfiles.bash " \
             "$RUNFILES_MANIFEST_FILE" | cut -d ' ' -f 2-)"
 else
-  echo >&2 "ERROR: cannot find //tools/bash/runfiles:runfiles.bash"
+  echo >&2 "ERROR: cannot find @bazel_tools//tools/bash/runfiles:runfiles.bash"
   exit 1
 fi
 # --- end runfiles.bash initialization ---
 
-source "$(rlocation "io_bazel/src/test/shell/unittest.bash")" || { echo "Could not source unittest.bash" >&2; exit 1; }
+source "$(rlocation "io_bazel/src/test/shell/unittest.bash")" \
+  || { echo "Could not source unittest.bash" >&2; exit 1; }
 
 function set_up() {
   tmp_TEST_TMPDIR=$TEST_TMPDIR
diff --git a/tools/bash/runfiles/BUILD b/tools/bash/runfiles/BUILD
index ed2d30f..adec4ce 100644
--- a/tools/bash/runfiles/BUILD
+++ b/tools/bash/runfiles/BUILD
@@ -25,9 +25,6 @@
     name = "runfiles_lib",
     testonly = 1,
     srcs = ["runfiles.bash"],
-    # TODO(laszlocsomor): remove this visibility after the tests under
-    # //src/test/shell/... depend on @bazel_tools//tools/bash/runfiles
-    visibility = ["//src/test/shell:__subpackages__"],
 )
 
 sh_test(