tests: Ensure that privileged daemon is not used during tests

- Fallback to sudo based privileged implementation. Privileged daemon tests are
still to be implemented.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
This commit is contained in:
Sunil Mohan Adapa 2025-08-11 11:07:31 -07:00 committed by Joseph Nuthalapati
parent 213d0330fd
commit a70611a2e9
No known key found for this signature in database
GPG Key ID: 5398F00A2FA43C35
3 changed files with 16 additions and 1 deletions

View File

@ -6,6 +6,7 @@ pytest configuration for all tests.
import importlib
import os
import pathlib
from unittest.mock import patch
import pytest
@ -109,6 +110,17 @@ def fixture_needs_sudo():
pytest.skip('Needs sudo command installed.')
@pytest.fixture(name='no_privileged_server', scope='module')
def fixture_no_privileged__server():
"""Don't setup for and run privileged methods on server.
Tests on using privileged daemon are not yet implemented.
"""
with patch('plinth.actions._run_privileged_method_on_server') as mock:
mock.side_effect = NotImplementedError
yield
@pytest.fixture(scope='session')
def splinter_selenium_implicit_wait():
"""Disable implicit waiting."""

View File

@ -15,7 +15,8 @@ from plinth.modules.backups import privileged
from plinth.modules.backups.repository import BorgRepository, SshBorgRepository
from plinth.tests import config as test_config
pytestmark = pytest.mark.usefixtures('needs_root', 'needs_borg', 'load_cfg')
pytestmark = pytest.mark.usefixtures('needs_root', 'needs_borg', 'load_cfg',
'no_privileged_server')
# try to access a non-existing url and a URL that exists but does not
# grant access

View File

@ -20,6 +20,8 @@ from plinth.actions import privileged, secret_str
actions_name = 'actions'
pytestmark = pytest.mark.usefixtures('no_privileged_server')
@pytest.fixture(name='popen')
def fixture_popen():