From 2501453ab6facb74b1a4ded824c8ccb17fac8d66 Mon Sep 17 00:00:00 2001 From: Taseer Ahmed Date: Mon, 7 Aug 2017 23:42:37 +0500 Subject: Refactor QPI module - Delete outdated code Change-Id: I0505d3ccc1ea76078f4d307f7d5ef66777ff6eb7 Signed-off-by: Taseer Ahmed --- qtip/cli/commands/cmd_qpi.py | 48 +++++++++++++++++++------------------------- 1 file changed, 21 insertions(+), 27 deletions(-) (limited to 'qtip') diff --git a/qtip/cli/commands/cmd_qpi.py b/qtip/cli/commands/cmd_qpi.py index d08842a4..4865b7ae 100644 --- a/qtip/cli/commands/cmd_qpi.py +++ b/qtip/cli/commands/cmd_qpi.py @@ -9,47 +9,41 @@ import click -from colorama import Fore import os +from os import path +from prettytable import PrettyTable +import yaml -from qtip.base.error import InvalidContentError -from qtip.base.error import NotFoundError -from qtip.cli import utils -from qtip.loader.qpi import QPISpec +QPI_PATH = path.join(path.dirname(__file__), '..', '..', '..', + 'resources', 'QPI') @click.group() def cli(): - ''' Collection of performance tests ''' + """ Collection of performance tests """ pass @cli.command('list', help='List all the QPI specs') def cmd_list(): - qpis = QPISpec.list_all() - table = utils.table('QPIs', qpis) + table = PrettyTable(['QPI', 'Description']) + table.align = 'l' + for qpi in os.listdir(QPI_PATH): + if qpi.endswith('yaml'): + with open('{}/{}'.format(QPI_PATH, qpi)) as conf: + details = yaml.safe_load(conf) + table.add_row([details['name'], details['description']]) click.echo(table) @cli.command('show', help='View details of a QPI') @click.argument('name') def show(name): - try: - qpi = QPISpec('{}.yaml'.format(name)) - except NotFoundError as nf: - click.echo(Fore.RED + "ERROR: qpi spec: " + nf.message) - except InvalidContentError as ice: - click.echo(Fore.RED + "ERROR: qpi spec: " + ice.message) - else: - cnt = qpi.content - output = utils.render('qpi', cnt) - click.echo(output) - - -@cli.command('run', help='Run performance tests for the specified QPI') -@click.argument('name') -@click.option('-p', '--path', help='Path to store results') -def run(name, path): - runner_path = path.join(os.path.dirname(__file__), os.path.pardir, os.path.pardir, - 'runner/runner.py') - os.system('python {0} -b all -d {1}'.format(runner_path, path)) + table = PrettyTable(['QPI', 'Description', 'Formula']) + table.align = 'l' + with open('{}/{}.yaml'.format(QPI_PATH, name)) as conf: + qpi = yaml.safe_load(conf) + for section in qpi['sections']: + table.add_row([section['name'], section['description'], + section['formula']]) + click.echo(table) -- cgit 1.2.3-korg