mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-08-26 12:46:08 +00:00
security: Convert functional tests to non-BDD python format
Signed-off-by: James Valleroy <jvalleroy@mailbox.org> Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
This commit is contained in:
parent
6aecad7259
commit
9ec995a741
@ -1,25 +0,0 @@
|
|||||||
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
||||||
|
|
||||||
@security @essential @system
|
|
||||||
Feature: Security
|
|
||||||
Configure security options.
|
|
||||||
|
|
||||||
Background:
|
|
||||||
Given I'm a logged in user
|
|
||||||
|
|
||||||
Scenario: Disable restricted console logins
|
|
||||||
Given restricted console logins are enabled
|
|
||||||
When I disable restricted console logins
|
|
||||||
Then restricted console logins should be disabled
|
|
||||||
|
|
||||||
Scenario: Backup and restore security
|
|
||||||
When I enable restricted console logins
|
|
||||||
And I create a backup of the security app data with name test_security
|
|
||||||
And I disable restricted console logins
|
|
||||||
And I restore the security app data backup with name test_security
|
|
||||||
Then restricted console logins should be enabled
|
|
||||||
|
|
||||||
Scenario: Enable restricted console logins
|
|
||||||
Given restricted console logins are disabled
|
|
||||||
When I enable restricted console logins
|
|
||||||
Then restricted console logins should be enabled
|
|
||||||
@ -3,29 +3,37 @@
|
|||||||
Functional, browser based tests for security app.
|
Functional, browser based tests for security app.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from pytest_bdd import given, parsers, scenarios, then, when
|
import pytest
|
||||||
|
|
||||||
from plinth.tests import functional
|
from plinth.tests import functional
|
||||||
|
|
||||||
scenarios('security.feature')
|
pytestmark = [pytest.mark.system, pytest.mark.security]
|
||||||
|
|
||||||
|
|
||||||
@given(parsers.parse('restricted console logins are {enabled}'))
|
@pytest.fixture(scope='module', autouse=True)
|
||||||
def security_given_enable_restricted_logins(session_browser, enabled):
|
def fixture_background(session_browser):
|
||||||
should_enable = (enabled == 'enabled')
|
"""Login."""
|
||||||
_enable_restricted_logins(session_browser, should_enable)
|
functional.login(session_browser)
|
||||||
|
|
||||||
|
|
||||||
@when(parsers.parse('I {enable} restricted console logins'))
|
def test_restricted_console_logins(session_browser):
|
||||||
def security_enable_restricted_logins(session_browser, enable):
|
"""Test enabling and disabling restricted console logins."""
|
||||||
should_enable = (enable == 'enable')
|
_enable_restricted_logins(session_browser, False)
|
||||||
_enable_restricted_logins(session_browser, should_enable)
|
assert not _get_restricted_logins(session_browser)
|
||||||
|
|
||||||
|
_enable_restricted_logins(session_browser, True)
|
||||||
|
assert _get_restricted_logins(session_browser)
|
||||||
|
|
||||||
|
|
||||||
@then(parsers.parse('restricted console logins should be {enabled}'))
|
@pytest.mark.backups
|
||||||
def security_assert_restricted_logins(session_browser, enabled):
|
def test_backup_restore(session_browser):
|
||||||
enabled = (enabled == 'enabled')
|
"""Test backup and restore of configuration."""
|
||||||
assert _get_restricted_logins(session_browser) == enabled
|
_enable_restricted_logins(session_browser, True)
|
||||||
|
functional.backup_create(session_browser, 'security', 'test_security')
|
||||||
|
|
||||||
|
_enable_restricted_logins(session_browser, False)
|
||||||
|
functional.backup_restore(session_browser, 'security', 'test_security')
|
||||||
|
|
||||||
|
assert _get_restricted_logins(session_browser)
|
||||||
|
|
||||||
|
|
||||||
def _enable_restricted_logins(browser, should_enable):
|
def _enable_restricted_logins(browser, should_enable):
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user