diff options
author | Klaus Weidenbach <Klaus.Weidenbach@gmx.net> | 2016-10-12 21:50:49 +0200 |
---|---|---|
committer | Klaus Weidenbach <Klaus.Weidenbach@gmx.net> | 2016-10-19 00:46:41 +0200 |
commit | b92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83 (patch) | |
tree | fe4d742c662b65605d0b6fee8fbf3f5a9e9b66e5 /tests/acceptance | |
parent | 2e1046220a70bb751c39854b881e86feb5d39149 (diff) | |
download | volse-hubzilla-b92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83.tar.gz volse-hubzilla-b92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83.tar.bz2 volse-hubzilla-b92e3ca3ee3f8bed1ff52311d29b4ce1e4297a83.zip |
[TASK] Restructure tests/ folder.
Move unit tests to tests/unit/. Get the old still working UnitTests
into a working state again.
Updated composer.json with required-dev packages.
Create a new folder tests/acceptance for Behat functional/acceptance
testing. Add a first Feature draft of a Behat functional test for
local login.
Diffstat (limited to 'tests/acceptance')
-rw-r--r-- | tests/acceptance/behat.yml | 27 | ||||
-rw-r--r-- | tests/acceptance/features/bootstrap/AdminContext.php | 23 | ||||
-rw-r--r-- | tests/acceptance/features/bootstrap/ApiContext.php | 23 | ||||
-rw-r--r-- | tests/acceptance/features/bootstrap/FeatureContext.php | 23 | ||||
-rw-r--r-- | tests/acceptance/features/login_local.feature | 18 |
5 files changed, 114 insertions, 0 deletions
diff --git a/tests/acceptance/behat.yml b/tests/acceptance/behat.yml new file mode 100644 index 000000000..933571e5e --- /dev/null +++ b/tests/acceptance/behat.yml @@ -0,0 +1,27 @@ +default: + suites: + default: + paths: + - %paths.base%/features + contexts: + - Behat\MinkExtension\Context\MinkContext + admin_features: + filters: { role: admin } + contexts: + - AdminContext + api_features: + paths: + - %paths.base%/features/api + filters: + tags: "@api" + contexts: + - ApiContext + gherkin: + filters: + tags: ~@wip + extensions: + Behat\MinkExtension: + base_url: 'http://localhost' + sessions: + default: + goutte: ~ diff --git a/tests/acceptance/features/bootstrap/AdminContext.php b/tests/acceptance/features/bootstrap/AdminContext.php new file mode 100644 index 000000000..aa4dced67 --- /dev/null +++ b/tests/acceptance/features/bootstrap/AdminContext.php @@ -0,0 +1,23 @@ +<?php + +use Behat\Behat\Context\Context; +use Behat\Behat\Context\SnippetAcceptingContext; +use Behat\Gherkin\Node\PyStringNode; +use Behat\Gherkin\Node\TableNode; + +/** + * Defines application features from the specific context. + */ +class AdminContext implements Context, SnippetAcceptingContext +{ + /** + * Initializes context. + * + * Every scenario gets its own context instance. + * You can also pass arbitrary arguments to the + * context constructor through behat.yml. + */ + public function __construct() + { + } +} diff --git a/tests/acceptance/features/bootstrap/ApiContext.php b/tests/acceptance/features/bootstrap/ApiContext.php new file mode 100644 index 000000000..9b772b209 --- /dev/null +++ b/tests/acceptance/features/bootstrap/ApiContext.php @@ -0,0 +1,23 @@ +<?php + +use Behat\Behat\Context\Context; +use Behat\Behat\Context\SnippetAcceptingContext; +use Behat\Gherkin\Node\PyStringNode; +use Behat\Gherkin\Node\TableNode; + +/** + * Defines application features from the specific context. + */ +class ApiContext implements Context, SnippetAcceptingContext +{ + /** + * Initializes context. + * + * Every scenario gets its own context instance. + * You can also pass arbitrary arguments to the + * context constructor through behat.yml. + */ + public function __construct() + { + } +} diff --git a/tests/acceptance/features/bootstrap/FeatureContext.php b/tests/acceptance/features/bootstrap/FeatureContext.php new file mode 100644 index 000000000..2ec02da85 --- /dev/null +++ b/tests/acceptance/features/bootstrap/FeatureContext.php @@ -0,0 +1,23 @@ +<?php + +use Behat\Behat\Context\Context; +use Behat\Behat\Context\SnippetAcceptingContext; +use Behat\Gherkin\Node\PyStringNode; +use Behat\Gherkin\Node\TableNode; + +/** + * Defines application features from the specific context. + */ +class FeatureContext implements Context, SnippetAcceptingContext +{ + /** + * Initializes context. + * + * Every scenario gets its own context instance. + * You can also pass arbitrary arguments to the + * context constructor through behat.yml. + */ + public function __construct() + { + } +} diff --git a/tests/acceptance/features/login_local.feature b/tests/acceptance/features/login_local.feature new file mode 100644 index 000000000..a7814b8f6 --- /dev/null +++ b/tests/acceptance/features/login_local.feature @@ -0,0 +1,18 @@ +Feature: Local login + In order to login locally + As a member + I need to successfully authenticate + + Scenario: Provide wrong credentials + Given I am on "/login" + When I fill in "id_username" with "foo" + And I fill in "id_password" with "bar" + And I press "submit" + Then I should be on "/login" + + Scenario: Provide correct credentials + Given I am on "/login" + When I fill in "id_username" with "behat" + And I fill in "id_password" with "behat" + And I press "submit" + Then I should be on "/apps" |