aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--yardstick/benchmark/__init__.py13
-rw-r--r--yardstick/benchmark/scenarios/__init__.py0
-rw-r--r--yardstick/benchmark/scenarios/base.py29
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)