Revision 5d94c034 test/py/ganeti.storage.filestorage_unittest.py
b/test/py/ganeti.storage.filestorage_unittest.py | ||
---|---|---|
45 | 45 |
""" |
46 | 46 |
info = filestorage.GetSpaceInfo("/") |
47 | 47 |
|
48 |
def testParseDfOutputValidInput(self): |
|
49 |
"""Tests that parsing of the output of 'df' works correctly. |
|
50 |
|
|
51 |
""" |
|
52 |
valid_df_output = \ |
|
53 |
"Filesystem 1M-blocks Used Available Use% Mounted on\n" \ |
|
54 |
"/dev/mapper/sysvg-root 161002M 58421M 94403M 39% /" |
|
55 |
expected_size = 161002 |
|
56 |
expected_free = 94403 |
|
57 |
|
|
58 |
(size, free) = filestorage._ParseDfResult(valid_df_output) |
|
59 |
self.assertEqual(expected_size, size, |
|
60 |
"Calculation of total size is incorrect.") |
|
61 |
self.assertEqual(expected_free, free, |
|
62 |
"Calculation of free space is incorrect.") |
|
63 |
|
|
64 |
|
|
65 |
def testParseDfOutputInvalidInput(self): |
|
66 |
"""Tests that parsing of the output of 'df' works correctly when invalid |
|
67 |
input is given. |
|
68 |
|
|
69 |
""" |
|
70 |
invalid_output_header_missing = \ |
|
71 |
"/dev/mapper/sysvg-root 161002M 58421M 94403M 39% /" |
|
72 |
invalid_output_dataline_missing = \ |
|
73 |
"Filesystem 1M-blocks Used Available Use% Mounted on\n" |
|
74 |
invalid_output_wrong_num_columns = \ |
|
75 |
"Filesystem 1M-blocks Available\n" \ |
|
76 |
"/dev/mapper/sysvg-root 161002M 94403M" |
|
77 |
invalid_output_units_wrong = \ |
|
78 |
"Filesystem 1M-blocks Used Available Use% Mounted on\n" \ |
|
79 |
"/dev/mapper/sysvg-root 161002G 58421G 94403G 39% /" |
|
80 |
invalid_output_units_missing = \ |
|
81 |
"Filesystem 1M-blocks Used Available Use% Mounted on\n" \ |
|
82 |
"/dev/mapper/sysvg-root 161002 58421 94403 39% /" |
|
83 |
invalid_outputs = [invalid_output_header_missing, |
|
84 |
invalid_output_dataline_missing, |
|
85 |
invalid_output_wrong_num_columns, |
|
86 |
invalid_output_units_wrong, |
|
87 |
invalid_output_units_missing] |
|
88 |
|
|
89 |
for output in invalid_outputs: |
|
90 |
self.assertRaises(errors.CommandError, filestorage._ParseDfResult, output) |
|
91 |
|
|
92 | 48 |
|
93 | 49 |
if __name__ == "__main__": |
94 | 50 |
testutils.GanetiTestProgram() |
Also available in: Unified diff