behat integration tests for LDAP, basic setup
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
This commit is contained in:
parent
f630b12fc7
commit
86d145f069
22
.drone.yml
22
.drone.yml
|
@ -562,6 +562,16 @@ pipeline:
|
|||
when:
|
||||
matrix:
|
||||
TESTS: integration-ldap-features
|
||||
integration-ldap-openldap-features:
|
||||
image: nextcloudci/integration-php7.0:integration-php7.0-6
|
||||
commands:
|
||||
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
|
||||
- ./occ app:enable user_ldap
|
||||
- cd build/integration
|
||||
- ./run.sh ldap_features/ldap-openldap.feature
|
||||
when:
|
||||
matrix:
|
||||
TESTS: integration-ldap-openldap-features
|
||||
integration-trashbin:
|
||||
image: nextcloudci/integration-php7.0:integration-php7.0-8
|
||||
commands:
|
||||
|
@ -828,6 +838,8 @@ matrix:
|
|||
- TESTS: integration-filesdrop-features
|
||||
- TESTS: integration-transfer-ownership-features
|
||||
- TESTS: integration-ldap-features
|
||||
- TESTS: integration-ldap-openldap-features
|
||||
ENABLE_OPENLDAP: true
|
||||
- TESTS: integration-trashbin
|
||||
- TESTS: integration-remote-api
|
||||
- TESTS: integration-download
|
||||
|
@ -1007,5 +1019,15 @@ services:
|
|||
when:
|
||||
matrix:
|
||||
TESTS: acceptance
|
||||
openldap:
|
||||
image: nextcloudci/openldap:openldap-4
|
||||
environment:
|
||||
- SLAPD_DOMAIN=nextcloud.ci
|
||||
- SLAPD_ORGANIZATION=Nextcloud
|
||||
- SLAPD_PASSWORD=admin
|
||||
- SLAPD_ADDITIONAL_MODULES=memberof
|
||||
when:
|
||||
matrix:
|
||||
ENABLE_OPENLDAP: true
|
||||
|
||||
branches: [ master, stable* ]
|
||||
|
|
|
@ -82,4 +82,26 @@ class LDAPContext implements Context {
|
|||
public function settingTheLDAPConfigurationTo(TableNode $configData) {
|
||||
$this->sendingToWith('PUT', $this->apiUrl . '/' . $this->configID, $configData);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Given /^having a valid LDAP configuration$/
|
||||
*/
|
||||
public function havingAValidLDAPConfiguration() {
|
||||
$this->asAn('admin');
|
||||
$this->creatingAnLDAPConfigurationAt('/apps/user_ldap/api/v1/config');
|
||||
$data = new TableNode([
|
||||
['configData[ldapHost]', 'openldap'],
|
||||
['configData[ldapPort]', '389'],
|
||||
['configData[ldapBase]', 'dc=nextcloud,dc=ci'],
|
||||
['configData[ldapAgentName]', 'cn=admin,dc=nextcloud,dc=ci'],
|
||||
['configData[ldapAgentPassword]', 'admin'],
|
||||
['configData[ldapUserFilter]', '(&(objectclass=inetorgperson))'],
|
||||
['configData[ldapLoginFilter]', '(&(objectclass=inetorgperson)(uid=%uid))'],
|
||||
['configData[ldapUserDisplayName]', 'displayname'],
|
||||
['configData[ldapEmailAttribute]', 'mail'],
|
||||
['configData[ldapConfigurationActive]', '1'],
|
||||
]);
|
||||
$this->settingTheLDAPConfigurationTo($data);
|
||||
$this->asAn('');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
Feature: LDAP
|
||||
Background:
|
||||
Given using api version "2"
|
||||
|
||||
Scenario: Test valid configuration by logging in
|
||||
Given having a valid LDAP configuration
|
||||
When Logging in using web as "alice"
|
||||
#When As an "alice"
|
||||
And sending "GET" to "/cloud/user"
|
||||
Then the HTTP status code should be "200"
|
|
@ -22,6 +22,7 @@ else
|
|||
exit 1
|
||||
fi
|
||||
fi
|
||||
NC_DATADIR=$($OCC config:system:get datadirectory)
|
||||
|
||||
composer install
|
||||
|
||||
|
@ -48,6 +49,7 @@ if [ "$INSTALLED" == "true" ]; then
|
|||
|
||||
#Enable external storage app
|
||||
$OCC app:enable files_external
|
||||
$OCC app:enable user_ldap
|
||||
|
||||
mkdir -p work/local_storage
|
||||
OUTPUT_CREATE_STORAGE=`$OCC files_external:create local_storage local null::null -c datadir=$PWD/work/local_storage`
|
||||
|
@ -70,10 +72,11 @@ if [ "$INSTALLED" == "true" ]; then
|
|||
|
||||
#Disable external storage app
|
||||
$OCC app:disable files_external
|
||||
$OCC app:disable user_ldap
|
||||
fi
|
||||
|
||||
if [ -z $HIDE_OC_LOGS ]; then
|
||||
tail "${OC_PATH}/data/nextcloud.log"
|
||||
tail "${NC_DATADIR}/nextcloud.log"
|
||||
fi
|
||||
|
||||
echo "runsh: Exit code: $RESULT"
|
||||
|
|
Loading…
Reference in New Issue