From 8bec0314e40e23a0f2f3f6b3b183acd54fa51b99 Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Tue, 23 May 2017 18:45:27 +0200 Subject: Add docstrings in unit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It also adds shebang and conforms the copyright header with the related OPNFV template. Change-Id: Iacb0cc8629e3021181eef2e8cb76daf48601abf4 Signed-off-by: Cédric Ollivier --- functest/core/feature.py | 2 +- functest/core/unit.py | 43 +++++++++++++++++++++++++++++++++---------- 2 files changed, 34 insertions(+), 11 deletions(-) (limited to 'functest') diff --git a/functest/core/feature.py b/functest/core/feature.py index 140c9bb2..d53eb7d0 100644 --- a/functest/core/feature.py +++ b/functest/core/feature.py @@ -7,7 +7,7 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 -"""Define the parent class of all Functest Features. +"""Define the parent classes of all Functest Features. Feature is considered as TestCase offered by Third-party. It offers helpers to run any python method or any bash command. diff --git a/functest/core/unit.py b/functest/core/unit.py index 6d8b5879..6799420c 100644 --- a/functest/core/unit.py +++ b/functest/core/unit.py @@ -1,11 +1,13 @@ -# Copyright (c) 2015 All rights reserved -# This program and the accompanying materials +#!/usr/bin/env python + +# Copyright (c) 2016 Cable Television Laboratories, Inc. 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 -# pylint: disable=missing-docstring +"""Define the parent class to run unittest.TestSuite as TestCase.""" from __future__ import division @@ -17,12 +19,12 @@ import six from functest.core import testcase +__author__ = ("Steven Pisarski , " + "Cedric Ollivier ") + class Suite(testcase.TestCase): - """ - This superclass is designed to execute pre-configured unittest.TestSuite() - objects - """ + """Base model for running unittest.TestSuite.""" def __init__(self, **kwargs): super(Suite, self).__init__(**kwargs) @@ -30,8 +32,29 @@ class Suite(testcase.TestCase): self.logger = logging.getLogger(__name__) def run(self, **kwargs): - """ - Starts test execution from the functest framework + """Run the test suite. + + It allows running any unittest.TestSuite and getting its + execution status. + + By default, it runs the suite defined as instance attribute. + It can be overriden by passing name as arg. It must + conform with TestLoader.loadTestsFromName(). + + It sets the following attributes required to push the results + to DB: + + * result, + * start_time, + * stop_time, + * details. + + Args: + kwargs: Arbitrary keyword arguments. + + Returns: + TestCase.EX_OK if any TestSuite has been run, + TestCase.EX_RUN_ERROR otherwise. """ try: name = kwargs["name"] -- cgit 1.2.3-korg