GNOME Bugzilla – Bug 743994
validate: Misc patches to fix bugs and implement small features
Last modified: 2015-06-09 08:27:46 UTC
Just openning a bug so that the patches from http://cgit.collabora.com/git/user/tsaunier/gst-devtools/log/?h=wip can be reviewed before I merge it.
Created attachment 296105 [details] [review] scenario: Add a signal to notify user the scenario is DONE executing
Created attachment 296106 [details] [review] validate:scenario: Avoid waiting for 50ms between actions We should be able to execute the next action as soon as the previous one is fully completed, make sure the code tries to do that and does not artificially add some waiting time. And make sure if the gst_validate_action_set_done is called from outside our execution thread, we do not try to execute anything
Created attachment 296107 [details] [review] validate: Wait for switch-track to complete before executing next action This action type can take some time, we need to make sure that the combiner/input-selector element properly pushed a buffer marked as DISCONT to concider the action is done.
Created attachment 296108 [details] [review] validate: Enhance support for simple pipeline test generation The GstValidatePipelineGenerator was quite limited in term of configuration for user who just want to specify pipelines to run with/without scenario. Enhance the API so that we can properly configure that.
Created attachment 296109 [details] [review] validate: Properly advertise the wait action as ASYNC And add some printing when executing the set-property action
Created attachment 296110 [details] [review] validate:scenario: Add a disable-plugin action type
Created attachment 296111 [details] [review] validate:scenario: Make action->scenario public API It can be usefull for action type implementers
Created attachment 296112 [details] [review] validate:launcher: Implement a FakeMediaDescriptor This allows us to more cleanly implement Simple pipeline test generation
Created attachment 296113 [details] [review] validate: Add a way to retrieve register actoin type from outside API: * GstValidateActionType * gst_validate_get_action_type
Created attachment 296114 [details] [review] validate: Add the notion of INTERLACED actions An interlaced action is an action that will be executed ASYNC but without that will not block following actions during its execution. The action should be set to done later on at any point during the execution of the scenario. API: + GST_VALIDATE_EXECUTE_ACTION_INTERLACED + GST_VALIDATE_ACTION_TYPE_INTERLACED
Created attachment 296115 [details] [review] validate:scenario: Add a Flag fore ActionType that need clocks sync And cleanly use it to set the need-clock-sync field in the scenario properties
Created attachment 296116 [details] [review] validate:scenario; Advertise action types that will be executed on addition Adding a flag to the action type And make that code thread safe.
Created attachment 296117 [details] [review] validate: Fix the check of action that can be *not* executed The check was wrong and we ended up allowing seek actions to no be executed. API: GST_VALIDATE_ACTION_TYPE_NO_EXECUTION_NOT_FATAL
Created attachment 296118 [details] [review] validate: Set seek_with_stop as needing at least 2secs media files
Created attachment 296119 [details] [review] validate: Minor documentation fixes
Created attachment 296120 [details] [review] validate: Add helper functions ti print actions API: + gst_validate_scenario_get_next_action + gst_validate_reporter_report_simple
Created attachment 296121 [details] [review] validate: scenario: Add a method to get the following action to be executed API: + gst_validate_scenario_get_next_action
Created attachment 296122 [details] [review] validate: launcher: Allow discovering scenario from full path
Created attachment 296123 [details] [review] launcher: Use gst-integration-testsuites FDO git repo And make sure that people that were using the old repo get the origin repo properly updated.
Created attachment 296124 [details] [review] validate:launcher:baseclasses: Avoid raising axception when all getting scenarios
Created attachment 296125 [details] [review] scenario: Do not concider we are seek_in_paused if executing a new action The new action might change the position on purpose and we should not fail in that case. Also at that point we know the test of position after the seek has been executed + Minor cosmetic fixes
Created attachment 296126 [details] [review] validate:scenario: Add a way to specify action structure size And return the register GstValidateActionType on registration
Created attachment 296127 [details] [review] validate: Implement fault_injection as a Gs(tValidate)Plugin
Created attachment 296128 [details] [review] validate: Use an actual GstRegistry to track our plugins Keeping everything internal for now
Created attachment 296129 [details] [review] validate: Move the fault_injection plugin to gst/plugins/
Created attachment 296130 [details] [review] validate: Use plugin name as implementer_namespace when registering action type And document it as a good practice as it will allow us to map plugins and action types
Created attachment 296153 [details] [review] validate: Rename libfaultinjector to libgstvalidatefaultinjector
Created attachment 296261 [details] [review] validate: Add an API to cleanly register action type from plugins API: gst_validate_register_action_type_dynamic
commit 441513e6896f59fad3ac5a76197e11917cc59639 Author: Thibault Saunier <tsaunier@gnome.org> Date: Fri Feb 6 11:46:13 2015 +0100 validate: Add an API to cleanly register action type from plugins API: gst_validate_register_action_type_dynamic https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 1194b313af56c552bdee2734b6dcc9a43d323d10 Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 22:12:48 2015 +0100 validate: Rename libfaultinjector to libgstvalidatefaultinjector https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit dae4051ed62d19ef5f8547f24c729b07d608e47c Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 15:14:04 2015 +0100 validate: Use plugin name as implementer_namespace when registering action type And document it as a good practice as it will allow us to map plugins and action types https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit cdc656560538827d51d6f4378668b6463584a0aa Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 14:54:55 2015 +0100 validate: Move the fault_injection plugin to gst/plugins/ https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 5c90a066450b66560a12c0fa5ac007e4b76ec97f Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 14:50:14 2015 +0100 validate: Use an actual GstRegistry to track our plugins Keeping everything internal for now https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit ed43ab15094a0ca8d01e35b87de4eeca579b50ef Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 14:30:05 2015 +0100 validate: Implement fault_injection as a Gs(tValidate)Plugin https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit a9b27057bbcae3064447082905f468c599ef90ff Author: Thibault Saunier <tsaunier@gnome.org> Date: Mon Feb 2 18:00:14 2015 +0100 validate:scenario: Add a way to specify action structure size And return the register GstValidateActionType on registration https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit fbfcf16b20bd6283517ee96af4f8ec3c9c987e19 Author: Thibault Saunier <tsaunier@gnome.org> Date: Mon Feb 2 11:41:24 2015 +0100 scenario: Do not concider we are seek_in_paused if executing a new action The new action might change the position on purpose and we should not fail in that case. Also at that point we know the test of position after the seek has been executed + Minor cosmetic fixes https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit be20eb015c67ebdeebe73f7e229498ad556a398a Author: Thibault Saunier <tsaunier@gnome.org> Date: Tue Jan 20 09:59:23 2015 +0100 validate:launcher:baseclasses: Avoid raising axception when all getting scenarios https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 00b222f38f180159015f324f9dce6ca99e794978 Author: Thibault Saunier <tsaunier@gnome.org> Date: Tue Jan 13 19:07:04 2015 +0100 launcher: Use gst-integration-testsuites FDO git repo And make sure that people that were using the old repo get the origin repo properly updated. https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit a85ace17833d399412e9d4854029e17571d9ad05 Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 15:27:37 2015 +0100 validate: launcher: Allow discovering scenario from full path https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 9f5310b1d8784a1ba4ab3b37ce38546e38eae365 Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 15:25:50 2015 +0100 validate: scenario: Add a method to get the following action to be executed API: + gst_validate_scenario_get_next_action https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 8125c46122fc442b5d57dabc21577053351624fa Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 15:24:35 2015 +0100 validate: Add helper functions ti print actions API: + gst_validate_scenario_get_next_action + gst_validate_reporter_report_simple https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 16d52a445b471bc3f823b615388d21ab34d8b109 Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 15:23:29 2015 +0100 validate: Minor documentation fixes https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 6350bf417e7e7525c936b28d5facf2192f3b7ff5 Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Feb 4 15:18:22 2015 +0100 validate: Set seek_with_stop as needing at least 2secs media files https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 11f923fa525408054963ae1c55fa80b7a0fd3c86 Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 23:23:11 2014 +0100 validate: Fix the check of action that can be *not* executed The check was wrong and we ended up allowing seek actions to no be executed. API: GST_VALIDATE_ACTION_TYPE_NO_EXECUTION_NOT_FATAL https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 5069e0347cc40fd2a4673cc1c7b68b9d10e667fd Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 23:16:27 2014 +0100 validate:scenario; Advertise action types that will be executed on addition Adding a flag to the action type And make that code thread safe. https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit c74f33bd177d5573a88b5170581cf19467b8ddb9 Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 23:12:30 2014 +0100 validate:scenario: Add a Flag fore ActionType that need clocks sync And cleanly use it to set the need-clock-sync field in the scenario properties https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit ef0f78f6006b8d77dfa40bbaafef6c2c8286024d Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 19:17:45 2014 +0100 validate: Add the notion of INTERLACED actions An interlaced action is an action that will be executed ASYNC but without that will not block following actions during its execution. The action should be set to done later on at any point during the execution of the scenario. API: + GST_VALIDATE_EXECUTE_ACTION_INTERLACED + GST_VALIDATE_ACTION_TYPE_INTERLACED https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit e7cc086f95c2113fa2f04e53a46bd209f196f5e1 Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 19:15:59 2014 +0100 validate: Add a way to retrieve register actoin type from outside API: * GstValidateActionType * gst_validate_get_action_type https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit eac25a3ad66d3790cdfea333856a64f643a1219d Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 16:01:49 2014 +0100 validate:launcher: Implement a FakeMediaDescriptor This allows us to more cleanly implement Simple pipeline test generation https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 71d53bb2d36b48c734afbcd4bd915c0af9fd925f Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 16:00:19 2014 +0100 validate:scenario: Make action->scenario public API It can be usefull for action type implementers https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 8848657ce32f1e8a1e221ed6fc2b2aba740a9baa Author: Thibault Saunier <tsaunier@gnome.org> Date: Sat Dec 13 16:00:12 2014 +0100 validate:scenario: Add a disable-plugin action type https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 5f888fb5b6bf2262b85d4d7faf32f91c048baf5d Author: Thibault Saunier <tsaunier@gnome.org> Date: Fri Dec 12 14:41:38 2014 +0100 validate: Properly advertise the wait action as ASYNC And add some printing when executing the set-property action https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit da31e3914fead8b830a20d28cd98f739041c506b Author: Thibault Saunier <tsaunier@gnome.org> Date: Fri Dec 12 14:36:16 2014 +0100 validate: Enhance support for simple pipeline test generation The GstValidatePipelineGenerator was quite limited in term of configuration for user who just want to specify pipelines to run with/without scenario. Enhance the API so that we can properly configure that. https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit bee292f54811312bc57b5421820fc5fefed4db62 Author: Thibault Saunier <tsaunier@gnome.org> Date: Thu Dec 11 14:21:12 2014 +0100 validate: Wait for switch-track to complete before executing next action This action type can take some time, we need to make sure that the combiner/input-selector element properly pushed a buffer marked as DISCONT to concider the action is done. https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit d7b5d5730521bc5144b509ae28149ff0d2afeee4 Author: Thibault Saunier <tsaunier@gnome.org> Date: Thu Dec 11 12:08:13 2014 +0100 validate:scenario: Avoid waiting for 50ms between actions We should be able to execute the next action as soon as the previous one is fully completed, make sure the code tries to do that and does not artificially add some waiting time. And make sure if the gst_validate_action_set_done is called from outside our execution thread, we do not try to execute anything https://bugzilla.gnome.org/show_bug.cgi?id=743994 commit 508678cfe1bf6271febf3ecd0727111c7df60785 Author: Thibault Saunier <tsaunier@gnome.org> Date: Wed Dec 10 20:37:58 2014 +0100 scenario: Add a signal to notify user when the scenario is DONE executing https://bugzilla.gnome.org/show_bug.cgi?id=743994