diff options
author | Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> | 2017-11-07 16:27:43 +0000 |
---|---|---|
committer | Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> | 2017-11-07 16:27:43 +0000 |
commit | 37dd0cbbcbcb1aa00b7f3aa2e74a6775c6a7f2fb (patch) | |
tree | 08824715b0dd267cde0d503c00a91df7f2b399d9 /yardstick | |
parent | 5a756e6171ad2d867914793dc2fd8b1aa7a19a6e (diff) |
Create get_description and get_scenario_type for Scenario
Created two new class functions for Scenario class:
* "get_description" will return the first line of the docstring,
if exists.
* "get_scenario_type" will return the value of "__scenario_type__"
variable.
Change-Id: I8e3b47e33e0bae101b874c3975bb9c383397d188
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
Diffstat (limited to 'yardstick')
-rw-r--r-- | yardstick/benchmark/core/scenario.py | 7 | ||||
-rw-r--r-- | yardstick/benchmark/scenarios/base.py | 14 |
2 files changed, 17 insertions, 4 deletions
diff --git a/yardstick/benchmark/core/scenario.py b/yardstick/benchmark/core/scenario.py index cd119c24c..28eb65230 100644 --- a/yardstick/benchmark/core/scenario.py +++ b/yardstick/benchmark/core/scenario.py @@ -10,7 +10,6 @@ """ Handler for yardstick command 'scenario' """ from __future__ import absolute_import -from __future__ import print_function from yardstick.benchmark.scenarios.base import Scenario from yardstick.benchmark.core import print_hbar @@ -27,9 +26,9 @@ class Scenarios(object): # pragma: no cover print_hbar(78) print("| %-16s | %-60s" % ("Type", "Description")) print_hbar(78) - for stype in types: - print("| %-16s | %-60s" % (stype.__scenario_type__, - stype.__doc__.split("\n")[0])) + for scenario_class in types: + print("| %-16s | %-60s" % (scenario_class.get_scenario_type(), + scenario_class.get_description())) print_hbar(78) def show(self, args): diff --git a/yardstick/benchmark/scenarios/base.py b/yardstick/benchmark/scenarios/base.py index 3cb138dd8..7af85834c 100644 --- a/yardstick/benchmark/scenarios/base.py +++ b/yardstick/benchmark/scenarios/base.py @@ -64,6 +64,20 @@ class Scenario(object): raise RuntimeError("No such scenario type %s" % scenario_type) + @classmethod + def get_scenario_type(cls): + """Return a string with the scenario type, if defined""" + return str(getattr(cls, '__scenario_type__', None)) + + @classmethod + def get_description(cls): + """Return a single line string with the class description + + This function will retrieve the class docstring and return the first + line, or 'None' if it's empty. + """ + return cls.__doc__.splitlines()[0] if cls.__doc__ else str(None) + def _push_to_outputs(self, keys, values): return dict(zip(keys, values)) |