diff --git a/plinth/modules/bind/tests/test_functional.py b/plinth/modules/bind/tests/test_functional.py index 0fe336b0a..fc43e6ab6 100644 --- a/plinth/modules/bind/tests/test_functional.py +++ b/plinth/modules/bind/tests/test_functional.py @@ -4,66 +4,50 @@ Functional, browser based tests for bind app. """ import pytest + from plinth.tests import functional pytestmark = [pytest.mark.system, pytest.mark.bind] -@pytest.fixture(scope='module', autouse=True) -def fixture_background(session_browser): - """Login and install the app.""" - functional.login(session_browser) - functional.install(session_browser, 'bind') - yield - functional.app_disable(session_browser, 'bind') +class TestBindApp(functional.BaseAppTests): + app_name = 'bind' + has_service = True + has_web = False + def test_set_forwarders(self, session_browser): + """Test setting forwarders.""" + functional.app_enable(session_browser, 'bind') + functional.set_forwarders(session_browser, '1.1.1.1') -def test_enable_disable(session_browser): - """Test enabling the app.""" - functional.app_disable(session_browser, 'bind') + functional.set_forwarders(session_browser, '1.1.1.1 1.0.0.1') + assert functional.get_forwarders(session_browser) == '1.1.1.1 1.0.0.1' - functional.app_enable(session_browser, 'bind') - assert functional.service_is_running(session_browser, 'bind') + def test_enable_disable_dnssec(self, session_browser): + """Test enabling/disabling DNSSEC.""" + functional.app_enable(session_browser, 'bind') + _enable_dnssec(session_browser, False) - functional.app_disable(session_browser, 'bind') - assert functional.service_is_not_running(session_browser, 'bind') + _enable_dnssec(session_browser, True) + assert _get_dnssec(session_browser) + _enable_dnssec(session_browser, False) + assert not _get_dnssec(session_browser) -def test_set_forwarders(session_browser): - """Test setting forwarders.""" - functional.app_enable(session_browser, 'bind') - functional.set_forwarders(session_browser, '1.1.1.1') + @pytest.mark.backups + def test_backup_restore(self, session_browser): + """Test backup and restore.""" + functional.app_enable(session_browser, 'bind') + functional.set_forwarders(session_browser, '1.1.1.1') + _enable_dnssec(session_browser, False) + functional.backup_create(session_browser, 'bind', 'test_bind') - functional.set_forwarders(session_browser, '1.1.1.1 1.0.0.1') - assert functional.get_forwarders(session_browser) == '1.1.1.1 1.0.0.1' + functional.set_forwarders(session_browser, '1.0.0.1') + _enable_dnssec(session_browser, True) - -def test_enable_disable_dnssec(session_browser): - """Test enabling/disabling DNSSEC.""" - functional.app_enable(session_browser, 'bind') - _enable_dnssec(session_browser, False) - - _enable_dnssec(session_browser, True) - assert _get_dnssec(session_browser) - - _enable_dnssec(session_browser, False) - assert not _get_dnssec(session_browser) - - -@pytest.mark.backups -def test_backup(session_browser): - """Test backup and restore.""" - functional.app_enable(session_browser, 'bind') - functional.set_forwarders(session_browser, '1.1.1.1') - _enable_dnssec(session_browser, False) - functional.backup_create(session_browser, 'bind', 'test_bind') - - functional.set_forwarders(session_browser, '1.0.0.1') - _enable_dnssec(session_browser, True) - - functional.backup_restore(session_browser, 'bind', 'test_bind') - assert functional.get_forwarders(session_browser) == '1.1.1.1' - assert not _get_dnssec(session_browser) + functional.backup_restore(session_browser, 'bind', 'test_bind') + assert functional.get_forwarders(session_browser) == '1.1.1.1' + assert not _get_dnssec(session_browser) def _enable_dnssec(browser, enable):