From 38bbca76c63423d3bd217dd8afd3c60052b2f381 Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Tue, 5 Oct 2021 09:51:53 -0400 Subject: [PATCH] tests: Drop step definitions Signed-off-by: James Valleroy Reviewed-by: Sunil Mohan Adapa --- conftest.py | 14 -- plinth/tests/functional/step_definitions.py | 188 -------------------- 2 files changed, 202 deletions(-) delete mode 100644 plinth/tests/functional/step_definitions.py diff --git a/conftest.py b/conftest.py index b016f7fcb..d5551a936 100644 --- a/conftest.py +++ b/conftest.py @@ -11,20 +11,6 @@ from unittest.mock import patch import pytest -try: - importlib.import_module('pytest_bdd') - _bdd_available = True -except ImportError: - _bdd_available = False -else: - from plinth.tests.functional.step_definitions import * - - -def pytest_ignore_collect(path, config): - """Return True to ignore functional tests.""" - if path.basename == 'test_functional.py': - return not _bdd_available - def pytest_addoption(parser): """Add a command line option to run functional tests.""" diff --git a/plinth/tests/functional/step_definitions.py b/plinth/tests/functional/step_definitions.py deleted file mode 100644 index 5d48f6eed..000000000 --- a/plinth/tests/functional/step_definitions.py +++ /dev/null @@ -1,188 +0,0 @@ -# SPDX-License-Identifier: AGPL-3.0-or-later -""" -Step definitions used across apps. -""" - -import time - -import pytest -from pytest_bdd import given, parsers, then, when - -from plinth.tests import functional - - -@given("I'm a logged in user") -def logged_in(session_browser): - functional.login(session_browser) - - -@given("I'm a logged out user") -def logged_out_user(session_browser): - functional.logout(session_browser) - - -@when("I log out") -def log_out_user(session_browser): - functional.logout(session_browser) - - -@given(parsers.parse('the {app_name:w} application is installed')) -def application_is_installed(session_browser, app_name): - functional.install(session_browser, app_name) - assert (functional.is_installed(session_browser, app_name)) - - -@given(parsers.parse('the {app_name:w} application is enabled')) -def application_is_enabled(session_browser, app_name): - functional.app_enable(session_browser, app_name) - - -@given(parsers.parse('the {app_name:w} application is disabled')) -def application_is_disabled(session_browser, app_name): - functional.app_disable(session_browser, app_name) - - -@when(parsers.parse('I enable the {app_name:w} application')) -def enable_application(session_browser, app_name): - functional.app_enable(session_browser, app_name) - - -@when(parsers.parse('I disable the {app_name:w} application')) -def disable_application(session_browser, app_name): - functional.app_disable(session_browser, app_name) - - -@given(parsers.parse('the {app_name:w} application can be disabled')) -def app_can_be_disabled(session_browser, app_name): - if not functional.app_can_be_disabled(session_browser, app_name): - pytest.skip('network time application can\'t be disabled') - - -@then(parsers.parse('the {app_name:w} application is {enabled:w}')) -def app_assert_is_enabled(session_browser, app_name, enabled): - assert enabled in ('enabled', 'disabled') - enabled = (enabled == 'enabled') - assert functional.app_is_enabled(session_browser, app_name) == enabled - - -@then(parsers.parse('the {service_name:w} service should be running')) -def service_should_be_running(session_browser, service_name): - assert functional.eventually(functional.service_is_running, - args=[session_browser, service_name]) - - -@then(parsers.parse('the {service_name:w} service should not be running')) -def service_should_not_be_running(session_browser, service_name): - assert functional.eventually(functional.service_is_not_running, - args=[session_browser, service_name]) - - -@then(parsers.parse('I should be prompted for login')) -def prompted_for_login(session_browser): - assert functional.is_login_prompt(session_browser) - - -@given(parsers.parse('the domain name is set to {domain:S}')) -def step_set_domain_name(session_browser, domain): - functional.set_domain_name(session_browser, domain) - - -@then(parsers.parse('the {site_name:w} site should be available')) -def site_should_be_available(session_browser, site_name): - assert functional.is_available(session_browser, site_name) - - -@then(parsers.parse('the {site_name:w} site should not be available')) -def site_should_not_be_available(session_browser, site_name): - assert not functional.is_available(session_browser, site_name) - - -@when(parsers.parse('I access {app_name:w} application')) -def access_application(session_browser, app_name): - functional.access_url(session_browser, app_name) - - -@given('advanced mode is on') -def advanced_mode_is_on(session_browser): - functional.set_advanced_mode(session_browser, True) - - -@when( - parsers.parse('I create a backup of the {app_name:w} app data with ' - 'name {archive_name:w}')) -def backup_create(session_browser, app_name, archive_name): - functional.backup_create(session_browser, app_name, archive_name) - - -@when(parsers.parse('I wait for {seconds} seconds')) -def sleep_for(seconds): - seconds = int(seconds) - time.sleep(seconds) - - -@when( - parsers.parse( - 'I restore the {app_name:w} app data backup with name {archive_name:w}' - )) -def backup_restore(session_browser, app_name, archive_name): - functional.backup_restore(session_browser, app_name, archive_name) - - -@given(parsers.parse('the network device is in the {zone:w} firewall zone')) -def networks_set_firewall_zone(session_browser, zone): - functional.networks_set_firewall_zone(session_browser, zone) - - -@given( - parsers.parse('the domain name for {app_name:w} is set to {domain_name:S}') -) -def select_domain_name(session_browser, app_name, domain_name): - functional.app_select_domain_name(session_browser, app_name, domain_name) - - -@then(parsers.parse('{app_name:w} app should be visible on the front page')) -def app_visible_on_front_page(session_browser, app_name): - shortcuts = functional.find_on_front_page(session_browser, app_name) - assert len(shortcuts) == 1 - - -@then(parsers.parse('{app_name:w} app should not be visible on the front page') - ) -def app_not_visible_on_front_page(session_browser, app_name): - shortcuts = functional.find_on_front_page(session_browser, app_name) - assert len(shortcuts) == 0 - - -@given(parsers.parse('bind forwarders are set to {forwarders}')) -def bind_given_set_forwarders(session_browser, forwarders): - functional.set_forwarders(session_browser, forwarders) - - -@when(parsers.parse('I set bind forwarders to {forwarders}')) -def bind_set_forwarders(session_browser, forwarders): - functional.set_forwarders(session_browser, forwarders) - - -@then(parsers.parse('bind forwarders should be {forwarders}')) -def bind_assert_forwarders(session_browser, forwarders): - assert functional.get_forwarders(session_browser) == forwarders - - -@given(parsers.parse('the user {name:w} exists')) -def user_exists(session_browser, name): - if functional.user_exists(session_browser, name): - functional.delete_user(session_browser, name) - functional.create_user(session_browser, name) - - -@given(parsers.parse('the user {name:w} in group {group:S} exists')) -def user_in_group_exists(session_browser, name, group): - if functional.user_exists(session_browser, name): - functional.delete_user(session_browser, name) - functional.create_user(session_browser, name, groups=[group]) - - -@given(parsers.parse("I'm logged in as the user {name:w}")) -@when(parsers.parse("I'm logged in as the user {name:w}")) -def logged_in_user(session_browser, name): - functional.login_with_account(session_browser, functional.base_url, name)