Basic testplan layout 13/25813/5
authorTaseer <taseer94@gmail.com>
Mon, 12 Dec 2016 19:47:46 +0000 (00:47 +0500)
committerTaseer <taseer94@gmail.com>
Tue, 13 Dec 2016 18:30:23 +0000 (23:30 +0500)
JIRA: QTIP-184

Change-Id: I605f81fce9c4c59b75d286a6262995ea2fa2e21e
Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
qtip/cli/commands/cmd_testplan.py [new file with mode: 0644]

diff --git a/qtip/cli/commands/cmd_testplan.py b/qtip/cli/commands/cmd_testplan.py
new file mode 100644 (file)
index 0000000..24899a8
--- /dev/null
@@ -0,0 +1,43 @@
+#############################################################################
+# Copyright (c) 2016 ZTE Corp 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 click
+from prettytable import PrettyTable
+from qtip.runner.testplan import TestPlan
+
+
+@click.group()
+def cli():
+    pass
+
+
+@cli.group()
+def testplan():
+    pass
+
+
+@testplan.command('list', help='List the different TestPlans.')
+def list():
+    testplans = TestPlan.list_all()
+    table = PrettyTable(["Testplans"])
+    table.align = 'l'
+    for testplan in testplans:
+        table.add_row([testplan['name']])
+    click.echo(table)
+
+
+@testplan.command('show', help='Show details of specified TestPlan.')
+@click.argument('name')
+def show(name):
+    plan = TestPlan(name)
+    results = plan.describe()
+    table = PrettyTable(["Name", "Description"])
+    table.align = 'l'
+    table.add_row([results['name'], results['description']])
+    click.echo(table)