diff options
author | rexlee8776 <limingjiang@huawei.com> | 2016-03-28 04:35:56 -0400 |
---|---|---|
committer | qi liang <liangqi1@huawei.com> | 2016-04-01 03:16:12 +0000 |
commit | c62baf6b2cfb901109e31e0b34a193b0ece99b79 (patch) | |
tree | 307bc03e726e8e5e8d1120485ec11b5275095a5f | |
parent | 010a22930664ac2663d331865ef29492dfa82f94 (diff) |
add "yardstick testcase show" command function
"yardstick testcase show" will show the details of specific test case
yardstick testcase show <case-name> (e.g. yardstick testcase show opnfv_yardstick_tc001)
JIRA:-
Change-Id: Ibb91625dc3e6802855f28160ee0aa8c7e386cf7a
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
-rw-r--r-- | tests/unit/cmd/commands/test_testcase.py | 9 | ||||
-rw-r--r-- | yardstick/cmd/commands/testcase.py | 21 |
2 files changed, 30 insertions, 0 deletions
diff --git a/tests/unit/cmd/commands/test_testcase.py b/tests/unit/cmd/commands/test_testcase.py index 351e5e79f..c55c367d0 100644 --- a/tests/unit/cmd/commands/test_testcase.py +++ b/tests/unit/cmd/commands/test_testcase.py @@ -17,6 +17,10 @@ import unittest from yardstick.cmd.commands import testcase from yardstick.cmd.commands.testcase import TestcaseCommands +class Arg(object): + def __init__(self): + self.casename=('opnfv_yardstick_tc001',) + class TestcaseCommandsUT(unittest.TestCase): def test_do_list(self): @@ -24,4 +28,9 @@ class TestcaseCommandsUT(unittest.TestCase): result = t.do_list("") self.assertEqual(result, True) + def test_do_show(self): + t = testcase.TestcaseCommands() + casename = Arg() + result = t.do_show(casename) + self.assertEqual(result, True) diff --git a/yardstick/cmd/commands/testcase.py b/yardstick/cmd/commands/testcase.py index c37fcc214..5205eb93e 100644 --- a/yardstick/cmd/commands/testcase.py +++ b/yardstick/cmd/commands/testcase.py @@ -10,6 +10,7 @@ """ Handler for yardstick command 'testcase' """ from yardstick.cmd import print_hbar from yardstick.common.task_template import TaskTemplate +from yardstick.common.utils import cliargs import os import yaml import sys @@ -42,6 +43,26 @@ class TestcaseCommands(object): self._format_print(self.testcase_list) return True + @cliargs("casename", type=str, help="test case name", nargs=1) + def do_show(self, args): + '''Show details of a specific test case''' + testcase_name = args.casename[0] + testcase_path = self.test_case_path + testcase_name + ".yaml" + try: + with open(testcase_path) as f: + try: + testcase_info = f.read() + print testcase_info + + except Exception as e: + print(("Failed to load test cases:" + "\n%(testcase_file)s\n%(err)s\n") + % {"testcase_file": testcase_path, "err": e}) + raise e + except IOError as ioerror: + sys.exit(ioerror) + return True + def _get_record(self, testcase_file): try: |