test_tools 0.18.1

Tools for writing and running tests.
Documentation
# Feature: SmokeModuleTest

### Scope

- **Purpose**: Enables isolated smoke testing of crate APIs in a temporary, independent Cargo project.
- **Responsibility**: Documents the SmokeModuleTest utility lifecycle: creation, configuration, execution, and cleanup.
- **In Scope**: Temporary project creation, Cargo.toml configuration, cargo execution, cleanup.
- **Out of Scope**: Behavioral equivalence testing; see `tests/behavioral_equivalence_tests.rs`.

### Design

SmokeModuleTest creates a temporary Cargo project in a system temp directory, injects a custom Cargo.toml with the target dependency (local path or published version), writes user-supplied Rust code, and executes cargo test or cargo run. After execution, the temporary directory is cleaned up.

Execution is conditional: smoke tests run only when the `WITH_SMOKE` environment variable is set or a CI/CD environment is detected.

### Cross-References

| Type | File | Responsibility |
|------|------|----------------|
| source | `src/test/smoke_test.rs` | SmokeModuleTest implementation |
| source | `src/test/process.rs` | Cargo process execution |
| source | `src/test/process/environment.rs` | CI/CD environment detection |
| test | `tests/smoke_module_test_creation.rs` | SmokeModuleTest creation and initialization tests |
| test | `tests/cargo_execution_tests.rs` | Cargo command execution tests |
| test | `tests/cargo_toml_config_tests.rs` | Cargo.toml configuration generation tests |
| test | `tests/cleanup_functionality_tests.rs` | Cleanup functionality tests |
| test | `tests/local_published_smoke_tests.rs` | Local and published version smoke tests |
| test | `tests/conditional_execution_tests.rs` | Conditional execution tests |
| task | `task/completed/014_write_tests_for_smoke_module_test.md` | Task for creation tests |
| task | `task/completed/015_implement_smoke_module_test_creation.md` | Task for implementation |