def test_check_sudo_with_error(self, mock_check_call: MagicMock): mock_check_call.side_effect = subprocess.SubprocessError('foo') self.assertFalse(Openvas.check_sudo()) mock_check_call.assert_called_with(['sudo', '-n', 'openvas', '-s'], stdout=subprocess.DEVNULL) mock_check_call.reset_mock() mock_check_call.side_effect = OSError('foo') self.assertFalse(Openvas.check_sudo()) mock_check_call.assert_called_with(['sudo', '-n', 'openvas', '-s'], stdout=subprocess.DEVNULL)
def sudo_available(self) -> bool: """ Checks that sudo is available """ if self._sudo_available is not None: return self._sudo_available if self.is_running_as_root: self._sudo_available = False return self._sudo_available self._sudo_available = Openvas.check_sudo() return self._sudo_available
def test_check_sudo(self, mock_check_call: MagicMock): self.assertTrue(Openvas.check_sudo()) mock_check_call.assert_called_with(['sudo', '-n', 'openvas', '-s'], stdout=subprocess.DEVNULL)