Fix and re-enable test_max_open_file_descriptors.

This test was failing because it was expecting the number of files to be higher than the maxfilesperproc if the hard limit was higher than that, but the behavior is correct.

RELNOTES: None.
PiperOrigin-RevId: 294997105
diff --git a/src/test/shell/integration/execution_phase_tests.sh b/src/test/shell/integration/execution_phase_tests.sh
index 4f78362..29cc3f1 100755
--- a/src/test/shell/integration/execution_phase_tests.sh
+++ b/src/test/shell/integration/execution_phase_tests.sh
@@ -278,12 +278,16 @@
 }
 
 # Fails on CI: https://github.com/bazelbuild/bazel/issues/10679
-function DISABLED_test_max_open_file_descriptors() {
+function test_max_open_file_descriptors() {
   echo "nfiles: hard $(ulimit -H -n), soft $(ulimit -S -n)"
 
   local exp_nfiles="$(ulimit -H -n)"
-  if [[ "$(uname -s)" == Darwin && "${exp_nfiles}" == unlimited ]]; then
-    exp_nfiles="$(/usr/sbin/sysctl -n kern.maxfilesperproc)"
+  if [[ "$(uname -s)" == Darwin ]]; then
+    local maxfiles="$(/usr/sbin/sysctl -n kern.maxfilesperproc)"
+    if [[ "${exp_nfiles}" == "unlimited" || "${exp_nfiles}" -gt "${maxfiles}" ]]
+    then
+        exp_nfiles="${maxfiles}"
+    fi
   elif "${is_windows}"; then
     # We do not implement the resources unlimiting feature on Windows at
     # the moment... so just expect the soft limit to remain unchanged.