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:
| Variable | Default | Description |
|---|---|---|
WSPACE_GATEWAY_URL | http://localhost:4003/workspaces/graphql | Workspace public gateway |
GLOBAL_GATEWAY_URL | http://localhost:4000/global/graphql | Global 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 tokenE2E_WORKSPACE_ID— target workspaceE2E_USER_ID— acting userE2E_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.shfrom the shared core at$HOME/products/workspaces/workspaces-doctor/core/. - Test logs are written to
logs/(gitignored); usemake logs,make logs-tail, andmake logs-listto 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/