Extract brush UI operation planning

This commit is contained in:
2026-06-03 10:40:12 +02:00
parent 4f0909f30c
commit efd568a416
8 changed files with 511 additions and 52 deletions

View File

@@ -268,6 +268,16 @@ add_test(NAME pp_ui_core_layout_xml_tests COMMAND pp_ui_core_layout_xml_tests)
set_tests_properties(pp_ui_core_layout_xml_tests PROPERTIES
LABELS "ui;desktop-fast;fuzz")
add_executable(pp_app_core_brush_ui_tests
app_core/brush_ui_tests.cpp)
target_link_libraries(pp_app_core_brush_ui_tests PRIVATE
pp_app_core
pp_test_harness)
add_test(NAME pp_app_core_brush_ui_tests COMMAND pp_app_core_brush_ui_tests)
set_tests_properties(pp_app_core_brush_ui_tests PROPERTIES
LABELS "app;paint;desktop-fast;fuzz")
add_executable(pp_app_core_document_route_tests
app_core/document_route_tests.cpp)
target_link_libraries(pp_app_core_document_route_tests PRIVATE
@@ -776,6 +786,36 @@ if(TARGET pano_cli)
LABELS "app;integration;desktop-fast;fuzz"
WILL_FAIL TRUE)
add_test(NAME pano_cli_plan_brush_operation_color_smoke
COMMAND pano_cli plan-brush-operation --kind color --r 0.25 --g 0.5 --b 0.75 --a 1)
set_tests_properties(pano_cli_plan_brush_operation_color_smoke PROPERTIES
LABELS "app;paint;integration;desktop-fast"
PASS_REGULAR_EXPRESSION "\"command\":\"plan-brush-operation\".*\"operation\":\"set-tip-color\".*\"r\":0.25.*\"g\":0.5.*\"b\":0.75.*\"updateColorUi\":true.*\"updateBrushUi\":false")
add_test(NAME pano_cli_plan_brush_operation_texture_smoke
COMMAND pano_cli plan-brush-operation --kind pattern --path data/patterns/noise.png --thumb data/patterns/thumbs/noise.png)
set_tests_properties(pano_cli_plan_brush_operation_texture_smoke PROPERTIES
LABELS "app;paint;integration;desktop-fast"
PASS_REGULAR_EXPRESSION "\"command\":\"plan-brush-operation\".*\"operation\":\"set-texture\".*\"textureSlot\":\"pattern\".*\"path\":\"data/patterns/noise.png\".*\"loadsBrushResources\":true.*\"updateBrushUi\":true")
add_test(NAME pano_cli_plan_brush_operation_preset_smoke
COMMAND pano_cli plan-brush-operation --kind preset)
set_tests_properties(pano_cli_plan_brush_operation_preset_smoke PROPERTIES
LABELS "app;paint;integration;desktop-fast"
PASS_REGULAR_EXPRESSION "\"command\":\"plan-brush-operation\".*\"operation\":\"replace-brush-from-preset\".*\"preservesExistingColor\":true.*\"loadsBrushResources\":true")
add_test(NAME pano_cli_plan_brush_operation_rejects_bad_color
COMMAND pano_cli plan-brush-operation --kind color --r 1.5)
set_tests_properties(pano_cli_plan_brush_operation_rejects_bad_color PROPERTIES
LABELS "app;paint;integration;desktop-fast;fuzz"
WILL_FAIL TRUE)
add_test(NAME pano_cli_plan_brush_operation_rejects_empty_texture
COMMAND pano_cli plan-brush-operation --kind tip)
set_tests_properties(pano_cli_plan_brush_operation_rejects_empty_texture PROPERTIES
LABELS "app;paint;integration;desktop-fast;fuzz"
WILL_FAIL TRUE)
add_test(NAME pano_cli_plan_share_file_unsaved_smoke
COMMAND pano_cli plan-share-file)
set_tests_properties(pano_cli_plan_share_file_unsaved_smoke PROPERTIES