X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=tests%2Fmain.py;h=540a9244fddf40776cd58703127c23fe9fa86369;hb=refs%2Fchanges%2F37%2F34537%2F13;hp=50e0821b5f0aa5a6949ed97b206a68e071ed6969;hpb=d5918a87f12fdef9bd7408c4554c42606c4896d8;p=doctor.git diff --git a/tests/main.py b/tests/main.py index 50e0821b..540a9244 100644 --- a/tests/main.py +++ b/tests/main.py @@ -6,12 +6,16 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +import os +from os.path import isfile, join import sys import config from image import Image +from instance import Instance import logger as doctor_log - +from user import User +from network import Network LOG = doctor_log.Logger('doctor').getLogger() @@ -20,38 +24,59 @@ class DoctorTest(object): def __init__(self, conf): self.conf = conf - self.image = Image(self.conf) + self.image = Image(self.conf, LOG) + self.user = User(self.conf, LOG) + self.network = Network(self.conf, LOG) + self.instance = Instance(self.conf, LOG) - def run(self): - """run doctor test""" - try: - LOG.info('doctor test starting.......') - # prepare the cloud env + def setup(self): + # prepare the cloud env - # preparing VM image... - self.image.create() + # preparing VM image... + self.image.create() - # creating test user... + # creating test user... + self.user.create() + self.user.update_quota() - # creating VM... + # creating VM... + self.network.create() + self.instance.create() + self.instance.wait_for_vm_launch() - # creating alarm... + def run(self): + """run doctor test""" + try: + LOG.info('doctor test starting.......') - # starting doctor sample components... + self.setup() # injecting host failure... # verify the test results + except Exception as e: LOG.error('doctor test failed, Exception=%s' % e) sys.exit(1) finally: - self.image.delete() + self.cleanup() + + def cleanup(self): + self.instance.delete() + self.network.delete() + self.image.delete() + self.user.delete() def main(): """doctor main""" - conf = config.prepare_conf() + doctor_root_dir = os.path.dirname(os.getcwd()) + config_file_dir = '{0}/{1}'.format(doctor_root_dir, 'etc/') + config_files = [join(config_file_dir, f) for f in os.listdir(config_file_dir) + if isfile(join(config_file_dir, f))] + + conf = config.prepare_conf(args=sys.argv[1:], + config_files=config_files) doctor = DoctorTest(conf) doctor.run()