Test Generator
# Test Generator — Multi-Purpose Utility Tool
A general-purpose CLI utility tool for data entry, management, and retrieval. Provides commands to run tasks, configure settings, check status, initialize the workspace, list/add/remove/search entries, export data, and view system info — all from the terminal.
## Command Reference
The script (`test-generator`) supports the following commands via its case dispatch:
| Command | Description | Example Output |
|---------|-------------|----------------|
| `run <arg>` | Execute the main function with a given argument | `Running: <arg>` |
| `config` | Show configuration file path | `Config: $DATA_DIR/config.json` |
| `status` | Display current operational status | `Status: ready` |
| `init` | Initialize the data directory and workspace | `Initialized in $DATA_DIR` |
| `list` | List all entries from the data log | Prints contents of `data.log` or `(empty)` |
| `add <text>` | Add a new timestamped entry to the data log | `Added: <text>` |
| `remove <id>` | Remove an entry from the data log | `Removed: <id>` |
| `search <term>` | Search entries in the data log (case-insensitive) | Matching lines or `Not found: <term>` |
| `export` | Export all data log contents to stdout | Full contents of `data.log` |
| `info` | Show version and data directory path | `Version: 2.0.0 \| Data: $DATA_DIR` |
| `help` | Show full help text with all commands | — |
| `version` | Print version string | `test-generator v2.0.0` |
## Data Storage
- **Data directory:** `$TEST_GENERATOR_DIR` or `~/.local/share/test-generator/`
- **Data log:** `$DATA_DIR/data.log` — stores all entries added via the `add` command, each prefixed with a date stamp
- **History log:** `$DATA_DIR/history.log` — every command invocation is timestamped and logged for auditing
- All directories are auto-created on first run via `mkdir -p`
## Requirements
- Bash 4+ (uses `set -euo pipefail`)
- No external dependencies — pure bash, no API keys, no network calls
- Works on Linux and macOS
- `grep` (for the `search` command)
## When to Use
1. **Quick data logging** — Need to record notes, test results, or observations from the command line? Use `test-generator add "your note here"` for instant timestamped logging.
2. **Simple searchable notebook** — Accumulated entries can be searched with `test-generator search <term>`, making it a lightweight grep-able journal for tracking test runs or results.
3. **Data export for pipelines** — Use `test-generator export` to pipe all logged data into downstream tools or redirect to a file for reporting.
4. **System status checks in scripts** — `test-generator status` provides a quick health-check output suitable for CI/CD monitoring scripts or cron jobs.
5. **Workspace initialization** — Run `test-generator init` when setting up a new machine or environment to bootstrap the data directory structure.
## Examples
### Initialize the workspace
```bash
test-generator init
# Output: Initialized in /home/user/.local/share/test-generator
```
### Add entries
```bash
test-generator add "Unit test suite passed - 47 tests, 0 failures"
# Output: Added: Unit test suite passed - 47 tests, 0 failures
test-generator add "Integration test: API endpoint /users returned 200"
# Output: Added: Integration test: API endpoint /users returned 200
```
### List all entries
```bash
test-generator list
# Output:
# 2026-03-18 Unit test suite passed - 47 tests, 0 failures
# 2026-03-18 Integration test: API endpoint /users returned 200
```
### Search entries
```bash
test-generator search "API"
# Output: 2026-03-18 Integration test: API endpoint /users returned 200
```
### Check status and info
```bash
test-generator status
# Output: Status: ready
test-generator info
# Output: Version: 2.0.0 | Data: /home/user/.local/share/test-generator
```
## Configuration
Set the `TEST_GENERATOR_DIR` environment variable to change the data directory:
```bash
export TEST_GENERATOR_DIR="/path/to/custom/dir"
```
Default: `~/.local/share/test-generator/`
---
Powered by BytesAgain | bytesagain.com | hello@bytesagain.com
标签
skill
ai