diff options
-rw-r--r-- | yardstick/benchmark/__init__.py | 13 | ||||
-rw-r--r-- | yardstick/benchmark/scenarios/__init__.py | 0 | ||||
-rw-r--r-- | yardstick/benchmark/scenarios/base.py | 29 |
3 files changed, 42 insertions, 0 deletions
diff --git a/yardstick/benchmark/__init__.py b/yardstick/benchmark/__init__.py new file mode 100644 index 000000000..94357a53a --- /dev/null +++ b/yardstick/benchmark/__init__.py @@ -0,0 +1,13 @@ +############################################################################## +# Copyright (c) 2015 Ericsson AB and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +import yardstick.common.utils as utils + +utils.import_modules_from_package("yardstick.benchmark.runners") +utils.import_modules_from_package("yardstick.benchmark.scenarios") diff --git a/yardstick/benchmark/scenarios/__init__.py b/yardstick/benchmark/scenarios/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/yardstick/benchmark/scenarios/__init__.py diff --git a/yardstick/benchmark/scenarios/base.py b/yardstick/benchmark/scenarios/base.py new file mode 100644 index 000000000..540acca47 --- /dev/null +++ b/yardstick/benchmark/scenarios/base.py @@ -0,0 +1,29 @@ +############################################################################## +# Copyright (c) 2015 Ericsson AB and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +""" Scenario base class +""" + +import yardstick.common.utils as utils + + +class Scenario(object): + + def run(self, args): + pass + + @staticmethod + def get(scenario_type): + """Returns instance of a scenario runner for execution type. + """ + for scenario in utils.itersubclasses(Scenario): + if scenario_type == scenario.__scenario_type__: + return scenario.__module__ + "." + scenario.__name__ + + raise RuntimeError("No such scenario type %s" % scenario_type) |