summaryrefslogtreecommitdiffstats
path: root/tests/check/elements
Commit message (Collapse)AuthorAgeFilesLines
* flvmux: Fix unit test to correctly handle request padsSebastian Dröge2009-08-031-9/+13
| | | | | | | Request pads are removed by the element instance in PAUSED->READY so we need to re-request pads for every run and link them again. Last fix for bug #590447.
* checks: add basic unit test for flvmux, but disable it for nowTim-Philipp Müller2009-08-012-0/+159
| | | | Basic unit test for flvmux. Fails miserably, hence disabled for now.
* check: add basic unit test for flvdemuxTim-Philipp Müller2009-07-312-0/+185
| | | | | In particular, test re-use of flvdemux in both pull and push mode (see #583030).
* gitignore: Ignore some new binariesJan Schmidt2009-07-191-0/+1
|
* tests: add unit tests for buffer-list payloadersOgnyan Tonchev2009-06-191-16/+212
| | | | See #585559
* tests: add some debug, send newsegmentWim Taymans2009-06-161-1/+9
|
* multiudpsink: add support for buffer listsOgnyan Tonchev2009-06-161-0/+199
| | | | | | Add support for BufferList and add a unit test. Fixes #585842
* check: Remove assertion that breaks check again git masterJan Schmidt2009-05-161-2/+0
| | | | | Remove the assertion that the sender of the tags message is the element until we decide whether that's going to be true or not.
* Moved 'y4menc' from -bad to -goodJan Schmidt2009-05-162-0/+166
|
* checks: move files required by unit tests into tests/files and make sure ↵Tim-Philipp Müller2009-05-152-7/+3
| | | | | | | | | | they're disted Move unit test data into the directory where it belongs and make in particular the flacdec unit test cd into the directory with the test files instead of making assumptions about the current working directory in that unit test. As a side effect of movng those files, there's only one EXTRA_DIST in tests/check/Makefile.am now, which is likely to work better than having two. Hopefully fixes #582753.
* rganalysis: Remove invalid unit testSebastian Dröge2009-05-121-43/+0
| | | | | | | | | | | The test creates buffers with non-silence, sets the GAP flag on it and expects rganalysis to ignore the content and assume silence. That's not the way how GAP buffers should be used, if the GAP flag is set elements *can* assume that they only contain silence but they're not *required* to assume that. The GAP flag must only be set on silence buffers. Fixes bug #582252.
* id3v2mux: Make the test failure slightly more informativeJan Schmidt2009-05-061-2/+5
|
* id3demux: add unit test file for unsynced id3 tagsTim-Philipp Müller2009-04-241-0/+31
|
* check: Check whether threads are already initialised before g_thread_init()Jan Schmidt2009-04-181-1/+2
|
* id3v2mux: write RVA2 frames containing peak/gain volume dataJonathan Matthew2009-04-021-7/+35
|
* .gitignore: ignore moreTim-Philipp Müller2009-03-201-0/+1
|
* Fix audioecho unit test on 32 bit systemsSebastian Dröge2009-02-031-6/+6
| | | | | | Cast the new value for the "delay" property to GstClockTime. Integers without type are passed to vararg functions with an integer type that can hold a pointer.
* Add unit test for aspectratiocrop Fixes bug #527951Thijs Vermeir2009-01-251-0/+201
| | | | | Add unit test for aspectratiocrop and refactor this element. Added finalize function to cleanup leaking mutex.
* Ignore check binariesJan Schmidt2009-01-251-0/+3
|
* skip video/x-raw-gray in videocrop unit testThijs Vermeir2009-01-231-0/+10
| | | | | | A recent commit added video/x-raw-gray support to videocrop. However this lets the videocrop unit test fail. Because videotestsrc can't generate this format.
* Rename audioreverb to audioecho. Fixes bug #568395.Sebastian Dröge2009-01-221-36/+36
| | | | | | | The element can add an echo and a simple reverb effect to an audio stream but for a real reverb filter it would need some additional filtering to prevent a metallic-sounding result.
* Add an echo/reverb filter to the audiofx plugin, with configurable echo ↵Sebastian Dröge2009-01-191-0/+229
| | | | | | | | | | | | | | | | | | | | | | | | | | delay, intensity and feedback. Fixes bug #567... Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/gst-plugins-good-plugins.hierarchy: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-spectrum.xml: * gst/audiofx/Makefile.am: * gst/audiofx/audiofx.c: (plugin_init): * gst/audiofx/audioreverb.c: (gst_audio_reverb_base_init), (gst_audio_reverb_class_init), (gst_audio_reverb_init), (gst_audio_reverb_finalize), (gst_audio_reverb_set_property), (gst_audio_reverb_get_property), (gst_audio_reverb_setup), (gst_audio_reverb_stop), (gst_audio_reverb_transform_ip): * gst/audiofx/audioreverb.h: * tests/check/Makefile.am: * tests/check/elements/audioreverb.c: (setup_reverb), (cleanup_reverb), (GST_START_TEST), (audioreverb_suite): Add an echo/reverb filter to the audiofx plugin, with configurable echo delay, intensity and feedback. Fixes bug #567874.
* Add audioiirfilter and audiofirfilter elements which allow generic IIR/FIR ↵Sebastian Dröge2009-01-132-0/+348
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | filters to be implemented by providing the... Original commit message from CVS: * configure.ac: * gst/audiofx/Makefile.am: * gst/audiofx/audiofirfilter.c: (gst_audio_fir_filter_base_init), (gst_audio_fir_filter_class_init), (gst_audio_fir_filter_update_kernel), (gst_audio_fir_filter_init), (gst_audio_fir_filter_setup), (gst_audio_fir_filter_finalize), (gst_audio_fir_filter_set_property), (gst_audio_fir_filter_get_property): * gst/audiofx/audiofirfilter.h: * gst/audiofx/audiofx.c: (plugin_init): * gst/audiofx/audioiirfilter.c: (gst_audio_iir_filter_base_init), (gst_audio_iir_filter_class_init), (gst_audio_iir_filter_update_coefficients), (gst_audio_iir_filter_init), (gst_audio_iir_filter_setup), (gst_audio_iir_filter_finalize), (gst_audio_iir_filter_set_property), (gst_audio_iir_filter_get_property): * gst/audiofx/audioiirfilter.h: Add audioiirfilter and audiofirfilter elements which allow generic IIR/FIR filters to be implemented by providing the filter coefficients. Fixes bug #567577. * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/gst-plugins-good-plugins.hierarchy: * docs/plugins/gst-plugins-good-plugins.signals: * docs/plugins/inspect/plugin-alaw.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-avi.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-mulaw.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-wavparse.xml: Add documentation for the audioiirfilter and audiofirfilter elements. * tests/check/Makefile.am: * tests/check/elements/audiofirfilter.c: (on_message), (on_rate_changed), (on_handoff), (GST_START_TEST), (audiofirfilter_suite): * tests/check/elements/audioiirfilter.c: (on_message), (on_rate_changed), (on_handoff), (GST_START_TEST), (audioiirfilter_suite): * tests/examples/Makefile.am: * tests/examples/audiofx/Makefile.am: * tests/examples/audiofx/firfilter-example.c: (on_message), (on_rate_changed), (main): * tests/examples/audiofx/iirfilter-example.c: (on_message), (on_rate_changed), (main): Add unit tests and example applications for the two filter elements.
* gst/audiofx/: Implement a base class for generic audio FIR filters.Sebastian Dröge2009-01-112-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/audiofx/Makefile.am: * gst/audiofx/audiofxbasefirfilter.c: (gst_audio_fx_base_fir_filter_dispose), (gst_audio_fx_base_fir_filter_base_init), (gst_audio_fx_base_fir_filter_class_init), (gst_audio_fx_base_fir_filter_init), (gst_audio_fx_base_fir_filter_push_residue), (gst_audio_fx_base_fir_filter_setup), (gst_audio_fx_base_fir_filter_transform), (gst_audio_fx_base_fir_filter_start), (gst_audio_fx_base_fir_filter_stop), (gst_audio_fx_base_fir_filter_query), (gst_audio_fx_base_fir_filter_query_type), (gst_audio_fx_base_fir_filter_event), (gst_audio_fx_base_fir_filter_set_kernel): * gst/audiofx/audiofxbasefirfilter.h: * gst/audiofx/audiofxbaseiirfilter.c: Implement a base class for generic audio FIR filters. * gst/audiofx/audiowsincband.c: (gst_gst_audio_wsincband_mode_get_type), (gst_gst_audio_wsincband_window_get_type), (gst_audio_wsincband_base_init), (gst_audio_wsincband_class_init), (gst_audio_wsincband_init), (gst_audio_wsincband_build_kernel), (gst_audio_wsincband_setup), (gst_audio_wsincband_set_property), (gst_audio_wsincband_get_property): * gst/audiofx/audiowsincband.h: * gst/audiofx/audiowsinclimit.c: (gst_audio_wsinclimit_mode_get_type), (gst_audio_wsinclimit_window_get_type), (gst_audio_wsinclimit_base_init), (gst_audio_wsinclimit_class_init), (gst_audio_wsinclimit_init), (gst_audio_wsinclimit_build_kernel), (gst_audio_wsinclimit_setup), (gst_audio_wsinclimit_set_property), (gst_audio_wsinclimit_get_property): * gst/audiofx/audiowsinclimit.h: * tests/check/elements/audiowsincband.c: (GST_START_TEST): * tests/check/elements/audiowsinclimit.c: (GST_START_TEST): Use this new base class for audiowsincband and audiowsinclimit. Also cleanup both elements.
* gst/matroska/: Some cleanups, refactoring and minor enhancements in caps ↵Mark Nauwelaerts2009-01-081-3/+4
| | | | | | | | | | | | | | | | handling. Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps): * gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps): Some cleanups, refactoring and minor enhancements in caps handling. * gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init), (gst_matroska_mux_init), (gst_matroska_pad_reset), (gst_matroska_pad_free), (gst_matroska_mux_reset), (gst_matroska_mux_video_pad_setcaps), (gst_matroska_mux_request_new_pad): * tests/check/elements/matroskamux.c: (teardown_src_pad): Only remove, release or reset what is appropriate upon state change.
* tests/check/elements/deinterleave.c: Increase timeout to 3 minutes to ↵Sebastian Dröge2008-12-161-0/+1
| | | | | | | | prevent timeouts. Original commit message from CVS: * tests/check/elements/deinterleave.c: (deinterleave_suite): Increase timeout to 3 minutes to prevent timeouts.
* tests/check/elements/interleave.c: Increase timeout to 3 minutes to prevent ↵Sebastian Dröge2008-12-161-0/+1
| | | | | | | | timeouts. Original commit message from CVS: * tests/check/elements/interleave.c: (interleave_suite): Increase timeout to 3 minutes to prevent timeouts.
* tests/check/elements/videocrop.c: Update the unit test for the new color ↵Sebastian Dröge2008-12-091-10/+11
| | | | | | | | | values for BT.601 red. Original commit message from CVS: * tests/check/elements/videocrop.c: (check_1x1_buffer): Update the unit test for the new color values for BT.601 red. Fixes bug #563510.
* tests/check/elements/souphttpsrc.c: The ports in libsoup are unsigned ↵Sebastian Dröge2008-12-091-27/+22
| | | | | | | | | | integers and not signed integers. Original commit message from CVS: * tests/check/elements/souphttpsrc.c: (GST_START_TEST), (run_server): The ports in libsoup are unsigned integers and not signed integers.
* Add support for basic and digest authentication in souphttpsrc.Ron McOuat2008-11-271-0/+143
| | | | | | | | | | | | | | | Original commit message from CVS: Patch by: Ron McOuat <rmcouat at smartt dot com> * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_class_init), (gst_soup_http_src_init), (gst_soup_http_src_dispose), (gst_soup_http_src_set_property), (gst_soup_http_src_get_property), (gst_soup_http_src_authenticate_cb), (gst_soup_http_src_start): * ext/soup/gstsouphttpsrc.h: * tests/check/elements/souphttpsrc.c: (basic_auth_cb), (digest_auth_cb), (run_test), (GST_START_TEST), (souphttpsrc_suite), (run_server): Add support for basic and digest authentication in souphttpsrc. Fixes bug #561775.
* tests/check/elements/icydemux.c: Add some refcount checkWim Taymans2008-10-272-1/+11
| | | | | | | | | | Original commit message from CVS: * tests/check/elements/icydemux.c: (icydemux_found_pad): Add some refcount check * tests/check/elements/rtp-payloading.c: (rtp_pipeline_run): Don't ignore the result of write(), fixes a compiler warning for me. * tests/icles/videobox-test.c: (main): Make the output a little more pretty.
* gst/qtdemux/qtdemux.c: Remove previous wrong commitEdward Hervey2008-10-151-1/+1
| | | | | | | | Original commit message from CVS: * gst/qtdemux/qtdemux.c: Remove previous wrong commit * tests/check/elements/icydemux.c: (icydemux_found_pad): Remove problematic and useless refcount check. Fixes #556381
* gst/: Fix build flags order.Jan Schmidt2008-09-175-25/+27
| | | | | | | | | | | | | | Original commit message from CVS: * gst/interleave/Makefile.am: * gst/matroska/Makefile.am: Fix build flags order. * tests/check/elements/audioamplify.c: (GST_START_TEST): * tests/check/elements/audiodynamic.c: (GST_START_TEST): * tests/check/elements/audioinvert.c: (GST_START_TEST): * tests/check/elements/audiopanorama.c: (GST_START_TEST): Format fixes. * tests/check/elements/multifile.c: Pull in unistd.h
* tests/check/elements/level.c: Fix compilation some more.Wim Taymans2008-08-141-1/+1
| | | | | | Original commit message from CVS: * tests/check/elements/level.c: (GST_START_TEST): Fix compilation some more.
* tests/check/elements/level.c: Add a test for level in stereo mode.Stefan Kost2008-08-101-0/+104
| | | | | | Original commit message from CVS: * tests/check/elements/level.c: Add a test for level in stereo mode.
* gst/rtsp/URLS: Add another URL.Wim Taymans2008-08-052-0/+3
| | | | | | | | | Original commit message from CVS: * gst/rtsp/URLS: Add another URL. * tests/check/elements/id3v2mux.c: (test_taglib_id3mux_with_tags): * tests/check/elements/rglimiter.c: (GST_START_TEST): Add some more debug info.
* ext/soup/gstsouphttpsrc.c: Fix Soup HTTP source seeking.Wouter Cloetens2008-07-191-0/+5
| | | | | | | | | | Original commit message from CVS: * ext/soup/gstsouphttpsrc.c: Fix Soup HTTP source seeking. Patch By: Wouter Cloetens <wouter at mind be> Fixes: #540300 * tests/check/elements/.cvsignore: Ignore new check programs.
* tests/check/elements/: Don't use declarations after statements.Sebastian Dröge2008-07-143-13/+109
| | | | | | | | | Original commit message from CVS: * tests/check/elements/cmmldec.c: (GST_START_TEST): * tests/check/elements/rtp-payloading.c: (rtp_pipeline_create), (rtp_pipeline_run): * tests/check/elements/souphttpsrc.c: (souphttpsrc_suite): Don't use declarations after statements.
* tests/check/elements/avimux.c: Adjust avimux unit test according to ↵Mark Nauwelaerts2008-06-281-1/+1
| | | | | | | | increased streamheader size. Original commit message from CVS: * tests/check/elements/avimux.c: (check_avimux_pad): Adjust avimux unit test according to increased streamheader size.
* gst/interleave/interleave.*: Allow setting channel positions via a property ↵Sebastian Dröge2008-06-021-6/+248
| | | | | | | | | | | | | | | | | | | | | | and allow using the channel positions on ... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_pad_get_type), (gst_interleave_finalize), (gst_audio_check_channel_positions), (gst_interleave_set_channel_positions), (gst_interleave_class_init), (gst_interleave_init), (gst_interleave_set_property), (gst_interleave_get_property), (gst_interleave_request_new_pad), (gst_interleave_release_pad), (gst_interleave_sink_setcaps), (gst_interleave_src_query_duration), (gst_interleave_src_query_latency), (gst_interleave_collected): * gst/interleave/interleave.h: Allow setting channel positions via a property and allow using the channel positions on the input as the channel positions of the output. Fix some broken logic and memory leaks. * tests/check/Makefile.am: * tests/check/elements/interleave.c: (src_handoff_float32), (sink_handoff_float32), (GST_START_TEST), (interleave_suite): Add unit tests for checking correct handling of channel positions.
* Ignore some more generated thingsJan Schmidt2008-05-281-0/+1
| | | | | | | | | Original commit message from CVS: * docs/plugins/.cvsignore: * tests/check/elements/.cvsignore: Ignore some more generated things * tests/check/Makefile.am: Ignore OSS elements in the state changes test too.
* gst/interleave/deinterleave.c: Add another example launch line.Sebastian Dröge2008-05-261-0/+440
| | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/interleave/deinterleave.c: Add another example launch line. * gst/interleave/interleave.c: (interleave_24), (gst_interleave_finalize), (gst_interleave_base_init), (gst_interleave_class_init), (gst_interleave_init), (gst_interleave_request_new_pad), (gst_interleave_release_pad), (gst_interleave_change_state), (__remove_channels), (__set_channels), (gst_interleave_sink_getcaps), (gst_interleave_set_process_function), (gst_interleave_sink_setcaps), (gst_interleave_sink_event), (gst_interleave_src_query_duration), (gst_interleave_src_query), (forward_event_func), (forward_event), (gst_interleave_src_event), (gst_interleave_collected): * gst/interleave/interleave.h: Major rewrite of interleave using GstCollectpads. This new version also supports almost all raw audio formats and has better caps negotiation. Fixes bug #506594. Also update docs and add some more examples. * tests/check/elements/interleave.c: (interleave_chain_func), (GST_START_TEST), (src_handoff_float32), (sink_handoff_float32), (interleave_suite): Add some more extensive unit tests for interleave.
* Don't use _gst_pad().Wim Taymans2008-05-262-6/+6
| | | | | | | | | | | | | | Original commit message from CVS: * examples/switch/switcher.c: (switch_timer): * gst/replaygain/gstrgvolume.c: (gst_rg_volume_init): * gst/rtpmanager/gstrtpclient.c: (create_stream): * gst/sdp/gstsdpdemux.c: (gst_sdp_demux_stream_configure_udp), (gst_sdp_demux_stream_configure_udp_sink): * tests/check/elements/deinterleave.c: (GST_START_TEST), (pad_added_setup_data_check_float32_8ch_cb): * tests/check/elements/rganalysis.c: (send_eos_event), (send_tag_event): Don't use _gst_pad().
* tests/check/elements/: Don't use gst_element_get_pad(), it's a bad, bad method.Wim Taymans2008-05-215-15/+19
| | | | | | | | | | | | | | | Original commit message from CVS: * tests/check/elements/avimux.c: (setup_src_pad), (teardown_src_pad): * tests/check/elements/icydemux.c: (icydemux_found_pad), (GST_START_TEST): * tests/check/elements/matroskamux.c: (setup_src_pad), (teardown_src_pad), (setup_sink_pad), (teardown_sink_pad): * tests/check/elements/videocrop.c: (video_crop_get_test_caps), (GST_START_TEST): * tests/check/elements/wavpackparse.c: (wavpackparse_found_pad), (setup_wavpackparse), (cleanup_wavpackparse): Don't use gst_element_get_pad(), it's a bad, bad method.
* tests/check/elements/deinterleave.c: Set keep-positions property to TRUE for ↵Sebastian Dröge2008-05-191-0/+1
| | | | | | | | | the 8 channel test to ensure that the or... Original commit message from CVS: * tests/check/elements/deinterleave.c: (GST_START_TEST): Set keep-positions property to TRUE for the 8 channel test to ensure that the original channel position is set on the output.
* gst/interleave/: Add support for all raw audio formats and provide better ↵Sebastian Dröge2008-05-161-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | negotiation if the caps are changing. Original commit message from CVS: * gst/interleave/Makefile.am: * gst/interleave/deinterleave.c: (deinterleave_24), (gst_deinterleave_finalize), (gst_deinterleave_base_init), (gst_deinterleave_class_init), (gst_deinterleave_init), (gst_deinterleave_add_new_pads), (gst_deinterleave_set_pads_caps), (gst_deinterleave_set_process_function), (gst_deinterleave_sink_setcaps), (__remove_channels), (__set_channels), (gst_deinterleave_getcaps), (gst_deinterleave_process), (gst_deinterleave_chain), (gst_deinterleave_sink_activate_push): * gst/interleave/deinterleave.h: Add support for all raw audio formats and provide better negotiation if the caps are changing. Don't allow changes of the channel positions and set the position of the corresponding channel on the src pad caps. General cleanup and smaller bugfixes. * tests/check/elements/deinterleave.c: (float_buffer_check_probe): Check the channel positions on the output buffer caps.
* tests/check/Makefile.am: Add deinterleave unit test to VALGRIND_TO_FIX, ↵Tim-Philipp Müller2008-05-141-0/+183
| | | | | | | | | | | | | | | | | since it causes weird invalid free errors in ... Original commit message from CVS: * tests/check/Makefile.am: Add deinterleave unit test to VALGRIND_TO_FIX, since it causes weird invalid free errors in valgrind/libc after _exit for some reason. * tests/check/elements/deinterleave.c: (pads_created), (set_channel_positions), (src_handoff_float32_8ch), (float_buffer_check_probe), (pad_added_setup_data_check_float32_8ch_cb), (make_fake_src_8chans_float32), (GST_START_TEST), (deinterleave_suite): Add some more deinterleave unit test bits I had locally.
* gst/interleave/: Split definitions into separate header files for better ↵Sebastian Dröge2008-05-141-0/+358
| | | | | | | | | | | | | | | | | | | | | | | | | | documentation generation. Original commit message from CVS: * gst/interleave/Makefile.am: * gst/interleave/deinterleave.h: * gst/interleave/interleave.h: * gst/interleave/plugin.h: Split definitions into separate header files for better documentation generation. * gst/interleave/deinterleave.c: (gst_deinterleave_base_init), (gst_deinterleave_class_init), (gst_deinterleave_sink_setcaps), (gst_deinterleave_process): Don't use alloca, allow caps changes as long as the number of channels does not change, don't use g_warning, return NOT_NEGOTIATED as early as possible and some other cleanup. * gst/interleave/interleave.c: (gst_interleave_base_init), (gst_interleave_class_init): Do some random cleanup. * tests/check/Makefile.am: * tests/check/elements/deinterleave.c: (GST_START_TEST), (deinterleave_chain_func), (deinterleave_pad_added), (deinterleave_suite): Add unit tests for the deinterleave element.
* tests/check/elements/multifile.c: Include stdlib.h and unistd.h for mkdtemp. ↵Sebastian Dröge2008-04-241-0/+2
| | | | | | | | | Some platforms have it declared in the f... Original commit message from CVS: * tests/check/elements/multifile.c: Include stdlib.h and unistd.h for mkdtemp. Some platforms have it declared in the former, some have it declared in the latter.
* tests/check/elements/rganalysis.c: Don't leak a tag list. Fixes bug #529285.Sebastian Dröge2008-04-211-0/+2
| | | | | | Original commit message from CVS: * tests/check/elements/rganalysis.c: (GST_START_TEST): Don't leak a tag list. Fixes bug #529285.