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;