Live Testing
June 15, 2026 ยท View on GitHub
The repository's live suite exercises real Google APIs and cleans up disposable resources. Use a dedicated test account:
make build
scripts/live-test.sh --account clawdbot@gmail.com
The account name must look like a test, bot, sandbox, QA, staging, or development
account unless --allow-nontest is supplied. GOG_KEYRING_PASSWORD must already
be available when the file keyring is active.
Coverage
The default suite covers core output and schema behavior plus live Gmail, Calendar, Drive, Docs, Sheets, Slides, Tasks, Contacts, People, and other available services. Recent-feature coverage includes:
- Docs UTF-16 ranges, links, named ranges, comments locate/poll, orphan guards, literal anchors, tab-scoped Markdown/export, one-column and nested-list tables, persisted batches, direct table operations, URL images, and content enumerators.
- Sheets rich-text links, validation, structured tables, and table-aware dimension deletion.
- Slides local-image insertion with API read-back.
- Calendar attachment replacement and clearing.
- Drive shortcuts, revisions, and persisted changes polling.
- Gmail thread-aware drafts, attachment metadata preservation/clearing, and explicit thread archive semantics.
- Contacts duplicate merge dry-run, apply, merged-field readback, and cleanup.
- CLI schema exit codes, Git-style help, output-mode precedence, and early validation errors.
Commands that return stable retryable exit code 8 are retried up to three
times by default. Set GOG_LIVE_RETRIES to change the attempt count. Created
Drive files, Docs batches, Calendar events, Gmail drafts/threads, and Photos
Picker sessions are also registered for best-effort cleanup if a later check
fails.
Optional Coverage
Some APIs need account- or project-specific setup:
GOG_LIVE_CHAT_SPACE=spaces/... scripts/live-test.sh --account workspace@example.com
GOG_LIVE_GMAIL_WATCH_TOPIC=projects/.../topics/... scripts/live-test.sh --account bot@example.com
GOG_LIVE_CLASSROOM_COURSE=<courseId> scripts/live-test.sh --account bot@example.com
Photos Picker is tested when the account has the explicit photospicker
service:
gog auth add you@gmail.com --services photospicker
Google Chat attachments and Keep require Workspace accounts. Gmail watch pull requires a configured Pub/Sub subscription. The suite reports these as skipped instead of treating unavailable infrastructure as a product failure.
Use --fast to skip Docs, Sheets, and Slides, --skip for selected modules,
and --strict when optional service failures should fail the run.