Skip to main content

Doctor (E2E Testing)

fluidgrids-doctor is the backend E2E test suite for the FluidGrids product. It focuses on GraphQL/curl backend coverage for wspace-workflow-svc through the workspace public gateway.

Repo structure

fluidgrids-doctor/
├── Makefile # Test orchestration (run `make help` for all targets)
├── README.md
├── scripts/ # Backend E2E bash scripts (test-*.sh + runners)
│ ├── run-all-tests.sh
│ ├── run-comprehensive-tests.sh
│ ├── test-workflow-crudl.sh
│ ├── test-trigger-crudl.sh
│ ├── test-run-crudl.sh
│ ├── test-credential-crudl.sh
│ ├── load-sample-workflows.sh
│ └── ...
├── samples/ # Sample workflow definitions (JSON)
└── logs/ # Test logs (gitignored, created on first run)

The suite depends on a shared E2E core that lives outside this repo at $HOME/products/workspaces/workspaces-doctor/core/. Each script sources core/scripts/common.sh from that location, and make bootstrap-env runs core/scripts/bootstrap-env.sh to mint an auth token into core/env/e2e-env.sh.

Environment selection

The suite defaults to local gateways. Targets are selected by pointing the gateway URLs at the environment you want; the defaults are:

VariableDefaultDescription
WSPACE_GATEWAY_URLhttp://localhost:4003/workspaces/graphqlWorkspace public gateway
GLOBAL_GATEWAY_URLhttp://localhost:4000/global/graphqlGlobal public gateway

Override either variable to run against a different deployment:

WSPACE_GATEWAY_URL=https://graphqlworkspaces.burdenoff.com/workspaces/graphql \
GLOBAL_GATEWAY_URL=https://graphql.burdenoff.com/global/graphql \
make test

Credentials

Authentication and workspace context come from the environment. make bootstrap-env populates these from the shared core env file for local runs; for other targets, export them yourself:

  • E2E_AUTH_TOKEN — bearer token
  • E2E_WORKSPACE_ID — target workspace
  • E2E_USER_ID — acting user
  • E2E_TENANT_ID — tenant (where required)

How to run tests

Bootstrap the environment

make bootstrap-env     # mint an auth token / set up the E2E environment
make refresh-env # force-refresh an expired token

Check prerequisites and status

make check             # verify env file + gateway health
make status # show environment and token status

Run everything

make test                    # run all tests (auto-bootstraps if the token expired)
make test-all-comprehensive # comprehensive suite (all categories)

Run a specific backend suite

make test-workflow-crudl
make test-trigger-crudl
make test-run-crudl
make test-credential-crudl

Load sample workflows

make load-samples      # load the samples/ workflows into the test workspace

Clean logs and temp artifacts

make clean             # remove the logs/ directory

Notes

  • Each script sources core/scripts/common.sh from the shared core at $HOME/products/workspaces/workspaces-doctor/core/.
  • Test logs are written to logs/ (gitignored); use make logs, make logs-tail, and make logs-list to inspect them.
  • FluidGrids does not have a dedicated backend workspace module; it builds on top of the shared wspace-workflow-svc.

Source

  • Repository: github.com/algoshred/fluidgrids-doctor
  • Shared E2E core: $HOME/products/workspaces/workspaces-doctor/core/

Next steps