Test Failed
Pull Request — master (#848)
by
unknown
03:43 queued 12s
created

scripts.configurator_tests.savu_config_test   A

Complexity

Total Complexity 11

Size/Duplication

Total Lines 107
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 80
dl 0
loc 107
rs 10
c 0
b 0
f 0
wmc 11

10 Methods

Rating   Name   Duplication   Size   Complexity  
A SavuConfigTest.testHelpBlank() 0 5 1
A SavuConfigTest.testAddMod_3() 0 10 1
A SavuConfigTest.testExit() 0 4 1
A SavuConfigTest.testAddMod_2() 0 9 1
A SavuConfigTest.testAddMod() 0 9 1
A SavuConfigTest.testHelpCommand() 0 5 1
A SavuConfigTest.testAdd() 0 7 1
A SavuConfigTest.testAddDupl() 0 9 1
A SavuConfigTest.testAddDupl_1() 0 9 1
A SavuConfigTest.testrunconfig() 0 6 2
1
2
"""
3
.. module:: savu_config_test
4
   :platform: Unix
5
   :synopsis: unittest test for savu_config
6
.. moduleauthor: Mark Basham
7
8
"""
9
10
import unittest
11
from mock import patch
12
from io import StringIO
13
import subprocess
14
15
from scripts.config_generator import savu_config
16
17
import scripts.configurator_tests.savu_config_test_utils as sctu
18
19
class SavuConfigTest(unittest.TestCase):
20
21
    def testExit(self):
22
        input_list = ['exit', 'y']
23
        output_checks = ['Thanks for using the application']
24
        sctu.savu_config_runner(input_list, output_checks)
25
26
    def testHelpBlank(self):
27
        input_list = ['', 'exit', 'y']
28
        output_checks = ['help :  Display the help information',
29
                         'exit :  Close the program']
30
        sctu.savu_config_runner(input_list, output_checks)
31
32
    def testHelpCommand(self):
33
        input_list = ['help', 'exit', 'y']
34
        output_checks = ['help :  Display the help information',
35
                         'exit :  Close the program']
36
        sctu.savu_config_runner(input_list, output_checks)
37
38
    def testAdd(self):
39
        input_list = ['add NxtomoLoader',
40
                      'exit',
41
                      'y']
42
        output_checks = ['Exception']
43
        sctu.savu_config_runner(input_list, output_checks,
44
                                error_str=True)
45
46
    def testAddMod(self):
47
        input_list = ['add NxtomoLoader',
48
                      'disp',
49
                      'mod 1.3 Test text',
50
                      'exit',
51
                      'y']
52
        output_checks = ['Exception']
53
        sctu.savu_config_runner(input_list, output_checks,
54
                                error_str=True)
55
56
    def testAddMod_2(self):
57
        input_list = ['add NxtomoLoader',
58
                      'add AstraReconCpu',
59
                      'mod 1.4 FBP',
60
                      'exit',
61
                      'y']
62
        output_checks = ['Exception']
63
        sctu.savu_config_runner(input_list, output_checks,
64
                                error_str=True)
65
66
    def testAddMod_3(self):
67
        # Exception due to invalid parameter number
68
        input_list = ['add NxtomoLoader',
69
                      'add AstraReconCpu',
70
                      'mod 1.45 FBP',
71
                      'exit',
72
                      'y']
73
        output_checks = ['Exception']
74
        sctu.savu_config_runner(input_list, output_checks,
75
                                error_str=True)
76
77
    def testAddDupl(self):
78
        # Exception due to invalid plugin number
79
        input_list = ['add NxtomoLoader',
80
                      'add AstraReconCpu',
81
                      'dupl 3',
82
                      'exit',
83
                      'y']
84
        output_checks = ['ValueError']
85
        sctu.savu_config_runner(input_list, output_checks)
86
87
    def testAddDupl_1(self):
88
        input_list = ['add NxtomoLoader',
89
                      'add AstraReconCpu',
90
                      'dupl 1',
91
                      'exit',
92
                      'y']
93
        output_checks = ['Exception', 'Error']
94
        sctu.savu_config_runner(input_list, output_checks,
95
                                error_str=True)
96
97
    def testrunconfig(self):
98
        result = subprocess.run(['savu_config', '-h'], stdout=subprocess.PIPE)
99
        str_stdout=str(result.stdout)
100
        if "Create" not in str_stdout:
101
            # Savu_config has failed to load
102
            assert False
103
104
105
if __name__ == "__main__":
106
    unittest.main()
107