test: video_output: add non-regression test
This commit introduces an integration test infrastructure which mocks the external components (filters, decoders, window, display) used by the video pipeline and starts this pipeline using the usual input item properties and player. The test will spawn an interface to have an initial vlc_object_t without going though the private layers of libvlc (avoiding casting the instance to private type, etc), so as to avoid encouraging code using such casts. It uses this infrastructure to prevent regression from the ticket #26345. By ensuring that the second failed decoder update won't crash, we can check that an already started vout won't lead to double-join/free like it was fixed in a7c99d05. The test itself will later be extended to add more sensible cases.
Showing
- test/Makefile.am 8 additions, 1 deletiontest/Makefile.am
- test/src/video_output/video_output.c 322 additions, 0 deletionstest/src/video_output/video_output.c
- test/src/video_output/video_output.h 50 additions, 0 deletionstest/src/video_output/video_output.h
- test/src/video_output/video_output_scenarios.c 163 additions, 0 deletionstest/src/video_output/video_output_scenarios.c
Loading
Please register or sign in to comment