- Add CLAUDE.md with project overview, tech stack, build commands, architecture description, coding standards, and sample images section - Add full directory structure: src/, docs/, tests/, import/ - Add CMakeLists.txt with C++20, OpenCV/LibRaw/Qt6 dependencies, converter_core static lib, optional GUI, and GTest tests - Add architecture documentation: ARCHITECTURE.md, PIPELINE.md, MODULES.md - Add source skeletons for all pipeline stages: RawLoader, Preprocessor, NegativeDetector, Inverter, ColorCorrector, CropProcessor, OutputWriter, Pipeline, MainWindow, CliRunner, main.cpp - Add initial test stubs for pipeline and rawloader - Add sample ARW files in import/ for integration testing Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
48 lines
1.4 KiB
CMake
48 lines
1.4 KiB
CMake
find_package(GTest REQUIRED)
|
|
|
|
# ──────────────────────────────────────────────
|
|
# Pipeline unit tests
|
|
# ──────────────────────────────────────────────
|
|
add_executable(test_pipeline
|
|
test_pipeline.cpp
|
|
)
|
|
|
|
target_link_libraries(test_pipeline PRIVATE
|
|
converter_core
|
|
GTest::gtest
|
|
GTest::gtest_main
|
|
)
|
|
|
|
target_include_directories(test_pipeline PRIVATE
|
|
${CMAKE_SOURCE_DIR}/src
|
|
)
|
|
|
|
add_test(NAME PipelineTests COMMAND test_pipeline)
|
|
|
|
# ──────────────────────────────────────────────
|
|
# RawLoader integration tests
|
|
# ──────────────────────────────────────────────
|
|
add_executable(test_rawloader
|
|
test_rawloader.cpp
|
|
)
|
|
|
|
target_link_libraries(test_rawloader PRIVATE
|
|
converter_core
|
|
GTest::gtest
|
|
GTest::gtest_main
|
|
)
|
|
|
|
target_include_directories(test_rawloader PRIVATE
|
|
${CMAKE_SOURCE_DIR}/src
|
|
)
|
|
|
|
add_test(NAME RawLoaderTests COMMAND test_rawloader)
|
|
|
|
# Make test data path available
|
|
target_compile_definitions(test_pipeline PRIVATE
|
|
TEST_DATA_DIR="${CMAKE_SOURCE_DIR}/import"
|
|
)
|
|
target_compile_definitions(test_rawloader PRIVATE
|
|
TEST_DATA_DIR="${CMAKE_SOURCE_DIR}/import"
|
|
)
|