Skip to content
Merged
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
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,10 @@ scrap is in early alpha development (v0.0.1). Currently implemented:

✅ **Core Features**
- CLI command framework (help, version, command discovery)
- External command metadata fetching - `scrap-*` executables are probed via
`--scrap-metadata` (falling back to `--help`) for a plain first-line
description shown in `scrap --help`; structured JSON/options metadata is
not yet part of the protocol

🚧 **In Progress**
- Project creation (`scrap new`) - currently a placeholder command
Expand Down Expand Up @@ -233,7 +237,7 @@ ctest --test-dir build/debug --output-on-failure

### Testing

The project uses GoogleTest for unit testing, run through ctest. Tests are automatically built when `BUILD_TESTS=ON`.
The project uses GoogleTest for unit and end-to-end testing, run through ctest. Tests are automatically built when `BUILD_TESTS=ON`.

```bash
# Build and run all tests
Expand All @@ -245,6 +249,7 @@ ctest --test-dir build/debug --output-on-failure --verbose
# Run a specific test executable directly
./build/debug/test/scrap_gtest
./build/debug/test/scrap_gtest_cli11
./build/debug/test/scrap_e2e

# Release build testing
cmake -S . -B build/release -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=ON
Expand All @@ -253,6 +258,7 @@ cmake --build build/release --target test

**Test Structure:**
- `test/unit/command/` - Unit tests for the command layer
- `test/e2e/` - End-to-end tests that spawn the built `scrap` binary as a subprocess

## 📊 Roadmap

Expand Down
2 changes: 1 addition & 1 deletion src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,14 @@ target_sources(${PROJECT_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/command/ExternalCommandResolver.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/ExternalMetadataProvider.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/HelpRenderer.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/MetadataProtocolProvider.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/ParserAdapter.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/ProjectCommandResolver.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/ScriptsReader.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/StubScriptsReader.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/VersionRenderer.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/driver/CLI11ParserAdapter.cpp
# Composition root helpers
${CMAKE_CURRENT_SOURCE_DIR}/command/NullMetadataProvider.cpp
${CMAKE_CURRENT_SOURCE_DIR}/command/RuntimeEnvironmentFactory.cpp
)

Expand Down
Loading
Loading