def test_disc_stats_df(self):
""" tests get_filesystem_fill_states using df """
- stats = file_helpers.get_filesystem_fill_states()
+ stats = file_helpers.get_filesystem_fill_states(
+ method=file_helpers.FS_FILL_METHOD_DF)
# check number
code, out, err = call_and_capture(file_helpers.DF_CMD)
0.1 * float(max(stat.size, size)),
'size deviates from used+free by more than 10%!')
+
def test_compare_methods(self):
""" compares methods to get_filesystem_fill_states
self.assertLess(abs(stateDF.capacity - stateNF.capacity), 5)
self.assertEqual(stateDF.name, stateNF.name)
+
def test_disc_state_statvfs(self):
- for state in file_helpers.get_filesystem_fill_states(
- method=file_helpers.FS_FILL_METHOD_STATVFS):
+ for state in file_helpers.get_all_statvfs_fills():
self.assertEqual(state.used + state.available, state.size)
self.assertGreaterEqual(state.size, 0)
self.assertGreaterEqual(state.used, 0)
# does match capacity? (would be very strange since capacity is
# calculated from used and size)
- if state.size > 0:
+ if state.size == 0:
+ self.assertEqual(state.used, 0)
+ self.assertEqual(state.available, 0)
+ else:
capacity = 100. * state.used / state.size
self.assertLess(abs(capacity - state.capacity), 5.,
'capacity deviates from used/size by >5%!')
0.1 * float(max(state.size, size)),
'size deviates from used+free by more than 10%!')
+
if __name__ == '__main__':
unittest.main()
min_free = None
min_name = None
for fill_state in get_filesystem_fill_states():
- if fill_state.name in test_helpers.NOT_REAL_FILESYSTEMS:
+ if fill_state.size == 0:
continue
if (min_free is None) or (fill_state.available < min_free):
min_free = fill_state.available
min_name = fill_state.name
print('min free: {0} with {1}B'.format(min_name, min_free))
+ if min_free is None:
+ self.fail('Found no filesystem with size>0 --> cannot test')
+
# set space tolerance such that no warn/err should show
size_warn = min_free/4;
size_err = min_free/2;