test(app): add gtest coverage for previously untested app modules

Add 312 test cases across 14 new files under tests/gtest, covering:

- app/common utility headers (tooltypes, projecttypes, nodedatatypes,
  trackreferencehandle, undowrapper, configwrapper, subtitleapp, ...)
- all 8 standardcombos widgets
- slider base classes (NumericSliderBase, SliderLadder)
- timeline/track handles, marker handle/painting, drag button,
  elapsed counter
- timebased views, selection manager, time target, resizable timeline
  scrollbar
- viewer sizer, display buffer, playback timer, text editor
- timeline common helpers, TimelineAndTrackView, TrackView(-item/-splitter)
- project explorer views, navigation and undo commands
- node view items/edges/connectors/minimap/toolbar/context
- node param view sub-widgets
- about/export/sequence/footage-properties dialogs
- scope widgets (histogram/vectorscope/waveform), managed display
- main menu, main window undo commands, viewer/footage panels,
  engine event bridge
- keyframe view handle/input connection, multicam display,
  node combo box, audio monitor

Includes regression tests for the TimelineAndTrackView teardown and
TimeScaledObject inverted-limits fixes. Full suite: 2341 tests, 0 failures
(64 skips are pre-existing GL-dependent cases under the offscreen QPA).
This commit is contained in:
2026-08-05 14:53:26 +08:00
parent 7b6042168a
commit 82162580ef
15 changed files with 9761 additions and 0 deletions
+14
View File
@@ -142,6 +142,20 @@ add_executable(olive-gtest
mainwindow_test.cpp
serialized_layout_xml_test.cpp
common_ratiodialog_test.cpp
common_misc2_test.cpp
widget_standardcombos_test.cpp
widget_sliderbase_test.cpp
widget_handles_test.cpp
widget_timebased2_test.cpp
widget_viewer2_test.cpp
timeline_common_test.cpp
widget_projectexplorer2_test.cpp
widget_nodeview_test.cpp
widget_nodeparamview_test.cpp
dialog_misc2_test.cpp
widget_scope_test.cpp
mainwindow2_test.cpp
widget_keyframe_multicam_test.cpp
)
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Test)