def test_health_nodeepscrub(self, mock_subprocess): with open('unit_tests/ceph_nodeepscrub.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--degraded_thresh', '1']) self.assertRaises(check_ceph_status.CriticalError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_nodeepscrubok(self, mock_subprocess): with open('unit_tests/ceph_nodeepscrub.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--ignore_nodeepscrub']) self.assertRaises(check_ceph_status.WarnError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_ok(self, mock_subprocess): with open('unit_tests/ceph_ok.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--degraded_thresh', '1']) check_output = check_ceph_status.check_ceph_status(args) self.assertRegex(check_output, r"^All OK$")
def test_health_crit_recovery(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [10, 2, 9] with open('unit_tests/ceph_params.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--recovery_rate', '400']) self.assertRaises(check_ceph_status.CriticalError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_warn(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [10, 2, 9] with open('unit_tests/ceph_warn.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args("") self.assertRaises(check_ceph_status.WarnError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_ok(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [10, 2, 9] with open('unit_tests/ceph_ok.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--degraded_thresh', '1']) check_output = check_ceph_status.check_ceph_status(args) self.assertRegex(check_output, r"^All OK$")
def test_health_warn_luminous(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [12, 2, 0] with open('unit_tests/ceph_many_warnings_luminous.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args("") self.assertRaises(check_ceph_status.WarnError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_lotsdegraded(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [10, 2, 9] with open('unit_tests/ceph_params.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--degraded_thresh', '1']) self.assertRaises(check_ceph_status.CriticalError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_crit(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [10, 2, 9] with open('unit_tests/ceph_error.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args("") self.assertRaises(check_ceph_status.CriticalError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_critical_misplaced_luminous(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [12, 2, 0] with open('unit_tests/ceph_many_warnings_luminous.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--misplaced_thresh', '0.1']) self.assertRaises(check_ceph_status.CriticalError, lambda: check_ceph_status.check_ceph_status(args))
def test_health_crit_deepscrub_luminous(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [12, 2, 0] with open('unit_tests/ceph_nodeepscrub_luminous.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--raise_nodeepscrub']) self.assertRaises(check_ceph_status.CriticalError, lambda: check_ceph_status.check_ceph_status(args))
def test_additional_ok_deepscrub_pre_luminous(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [10, 2, 9] with open('unit_tests/ceph_nodeepscrub.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--additional_check', 'osd out']) check_output = check_ceph_status.check_ceph_status(args) self.assertRegex(check_output, r"^All OK$")
def test_additional_warn_deepscrub_pre_luminous(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [10, 2, 9] with open('unit_tests/ceph_nodeepscrub.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--additional_check', 'deep']) self.assertRaises(check_ceph_status.WarnError, lambda: check_ceph_status.check_ceph_status(args))
def test_num_osds_error_luminous(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [12, 2, 0] with open('unit_tests/ceph_degraded_luminous.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--check_num_osds']) self.assertRaises(check_ceph_status.CriticalError, lambda: check_ceph_status.check_ceph_status(args))
def test_num_osds_ok_luminous(self, mock_ceph_version, mock_subprocess): mock_ceph_version.return_value = [12, 2, 0] with open('unit_tests/ceph_many_warnings_luminous.json') as f: tree = f.read() mock_subprocess.return_value = tree.encode('UTF-8') args = check_ceph_status.parse_args(['--check_num_osds']) check_output = check_ceph_status.check_ceph_status(args) self.assertRegex(check_output, r"^OK")