.gitignore added
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools / gopls@v0.6.9 / integration / govim / run_tests_for_cloudbuild.sh
diff --git a/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools/gopls@v0.6.9/integration/govim/run_tests_for_cloudbuild.sh b/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools/gopls@v0.6.9/integration/govim/run_tests_for_cloudbuild.sh
new file mode 100644 (file)
index 0000000..4ecc781
--- /dev/null
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+# Copyright 2020 The Go Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style
+# license that can be found in the LICENSE file.
+
+# This script runs govim integration tests but always succeeds, instead writing
+# their result to a file so that any test failure can be deferred to a later
+# build step. We do this so that we can capture govim test artifacts regardless
+# of the test results.
+
+# Substitute the locally built gopls binary for use in govim integration tests.
+go test -short ./cmd/govim -gopls /workspace/gopls/gopls
+
+# Stash the error, for use in a later build step.
+echo "exit $?" > /workspace/govim_test_result.sh
+
+# Clean up unnecessary artifacts. This is based on govim/_scripts/tidyUp.bash.
+# Since we're fetching govim using the go command, we won't have this non-go
+# source directory available to us.
+if [[ -n "$GOVIM_TESTSCRIPT_WORKDIR_ROOT" ]]; then
+  echo "Cleaning up build artifacts..."
+  # Make artifacts writable so that rm -rf doesn't complain.
+  chmod -R u+w "$GOVIM_TESTSCRIPT_WORKDIR_ROOT"
+
+  # Remove directories we don't care about.
+  find "$GOVIM_TESTSCRIPT_WORKDIR_ROOT" -type d \( -name .vim -o -name gopath \) -prune -exec rm -rf '{}' \;
+fi