This class defines a common API for any mixin classes that want to perform additional tasks before each iteration of a Perf.Recipe test.
v3:
Create a PerfTestMixins module and add the BasePerfTestIterationTweakMixin in the module.
Signed-off-by: Jan Tluka jtluka@redhat.com --- .../BasePerfTestIterationTweakMixin.py | 18 ++++++++++++++++++ .../Perf/PerfTestMixins/__init__.py | 1 + 2 files changed, 19 insertions(+) create mode 100644 lnst/RecipeCommon/Perf/PerfTestMixins/BasePerfTestIterationTweakMixin.py create mode 100644 lnst/RecipeCommon/Perf/PerfTestMixins/__init__.py
diff --git a/lnst/RecipeCommon/Perf/PerfTestMixins/BasePerfTestIterationTweakMixin.py b/lnst/RecipeCommon/Perf/PerfTestMixins/BasePerfTestIterationTweakMixin.py new file mode 100644 index 00000000..6025f76e --- /dev/null +++ b/lnst/RecipeCommon/Perf/PerfTestMixins/BasePerfTestIterationTweakMixin.py @@ -0,0 +1,18 @@ +class BasePerfTestIterationTweakMixin(object): + """ + This class is an extension to the :any:`Perf.Recipe` and defines common API + for specific mixin classes that want to perform additional actions before + each of the *perf test iterations*. + + The mixin classes should implement each of the methods in collaborative manner. + """ + + def generate_perf_test_iteration_tweak_description(self, perf_config): + return ["Performance test iteration tweaks:"] + + def apply_perf_test_iteration_tweak(self, perf_config): + perf_config.perf_test_iteration_tweak_config = {} + + def remove_perf_test_iteration_tweak(self, perf_config): + # TODO: check if anything left in the perf_config.perf_test_iteration_tweak_config + pass diff --git a/lnst/RecipeCommon/Perf/PerfTestMixins/__init__.py b/lnst/RecipeCommon/Perf/PerfTestMixins/__init__.py new file mode 100644 index 00000000..e29b040d --- /dev/null +++ b/lnst/RecipeCommon/Perf/PerfTestMixins/__init__.py @@ -0,0 +1 @@ +from lnst.RecipeCommon.Perf.PerfTestMixins.BasePerfTestIterationTweakMixin import BasePerfTestIterationTweakMixin