summaryrefslogtreecommitdiffstats
path: root/TestUnits/replicate/self_heal/Main.py
blob: 4e37265794b5a7385e37742544c1cb358d0287a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
"""Main module for the testunit.

This module "main" function is called from atfexecute to execute the testunit.
"""
import parser
import atfutils
import glusterutils
import managerutils
import testcases

def initialize(filename):
    """
    """
    return_status = 1
    if parser.parse_testenv_configfile(filename):
        return return_status
    if managerutils.ssh_connect_allhosts():
        return return_status
    
    return 0

def setup():
    """
    """
    return_status = 1
    if atfutils.set_active_volume("volume1"):
        return return_status
    return 0

def execute(*testcaselist):
    """
    """
    passedtestcases = 0
    failedtestcases = 0
    selectedtestcases = len(testcaselist)
    
    for testcase in testcaselist:
        function_obj = getattr(testcases, testcase)
        if function_obj:
            print "Starting Test: ' %s '" % testcase
            return_status = function_obj()
            if return_status:
                print "TestCase ' %s ' Failed" % testcase
                failedtestcases += 1
            else:
                print "TestCase ' %s ' Passed" % testcase
                passedtestcases += 1
            print "Ending Test: ' %s '" % testcase
        else:
            print "TestCase %s not defined in 'testcases' module" % testcase
            continue

    print "Selected %d : Passed %d, Failed %d" % (selectedtestcases,
                                                  passedtestcases,
                                                  failedtestcases)
        
def cleanup():
    """
    """
    pass
    
def main(testenvfile, *testcaselist):
    """
    """
    initialize(testenvfile)
    setup()
    execute(*testcaselist)
    cleanup()
    return