# govim integration tests Files in this directory configure Cloud Build to run [govim] integration tests against a gopls binary built from source. ## Running on GCP To run these integration tests in Cloud Build, use the following steps. Here we assume that `$PROJECT_ID` is a valid GCP project and `$BUCKET` is a cloud storage bucket owned by that project. - `cd` to the root directory of the tools project. - (at least once per GCP project) Build the test harness: ``` $ gcloud builds submit \ --project="${PROJECT_ID}" \ --config=gopls/integration/govim/cloudbuild.harness.yaml ``` - Run the integration tests: ``` $ gcloud builds submit \ --project="${PROJECT_ID}" \ --config=gopls/integration/govim/cloudbuild.yaml \ --substitutions=_RESULT_BUCKET="${BUCKET}" ``` ## Fetching Artifacts Assuming the artifacts bucket is world readable, you can fetch integration from GCS. They are located at: - logs: `https://storage.googleapis.com/${BUCKET}/log-${EVALUATION_ID}.txt` - artifact tarball: `https://storage.googleapis.com/${BUCKET}/govim/${EVALUATION_ID}/artifacts.tar.gz` The `artifacts.go` command can be used to fetch both artifacts using an evaluation id. ## Running locally Run `gopls/integration/govim/run_local.sh`. This may take a while the first time it is run, as it will require building the test harness. This script accepts two flags to modify its behavior: **--sudo**: run docker with `sudo` **--short**: run `go test -short` [govim]: https://github.com/govim/govim