Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions tests/e2e/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# End-to-End Smoke Test for c8ctl

Quick validation script that tests basic CLI functionality.

## Prerequisites

- **Camunda 8** running at `http://localhost:8080`

## Usage
Comment on lines +5 to +9
Copy link

Copilot AI Feb 20, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The prerequisites mention Camunda 8 at http://localhost:8080, but the CLI’s default self-managed base URL is http://localhost:8080/v2 (and it falls back to demo/demo auth). Consider documenting the /v2 requirement and any expected auth defaults. Also, if the smoke test is intended to be safe to run locally, document (or enforce in the script) using C8CTL_DATA_DIR to isolate config so it doesn’t touch the user’s real ~/.config / ~/Library/... state.

Copilot uses AI. Check for mistakes.

```bash
./tests/e2e/smoke-test.sh
```

Run with verbose output to see command responses:
```bash
./tests/e2e/smoke-test.sh --verbose
# or
./tests/e2e/smoke-test.sh -v
```

Adjust wait times for slower environments:
```bash
C8_WAIT_TIME=2 ./tests/e2e/smoke-test.sh
```

**Note**: The test uses a `c8_cmd` wrapper function for all CLI commands:
- **State-changing commands** (deploy, create, run, publish, add, remove): Automatically waits after execution (default: 1 second) to ensure data is properly indexed
- **Read-only commands** (list, get, search): Uses `c8_cmd 0` to skip wait time
- **Custom wait**: Use `c8_cmd 2 publish msg` for longer waits
- The default wait time can be configured via the `C8_WAIT_TIME` environment variable

## Scenarios Covered

The smoke test validates these core CLI features:

1. **Help command**
2. **Deploy process**
3. **Create process instance**
4. **Run command and list process instances**
5. **Get topology**
6. **User task search/completion**
7. **Message correlation**
8. **Search functionality**
9. **Profile management**
Loading