|
1 | 1 | setup() { |
| 2 | + set -eu -o pipefail |
2 | 3 | export DIR="$( cd "$( dirname "$BATS_TEST_FILENAME" )" >/dev/null 2>&1 && pwd )/.." |
3 | | - export TESTDIR=$(mktemp -d -t testsolr-XXXXXXXXXX) |
4 | | - export PROJNAME=testsolr |
| 4 | + export TESTDIR=~/tmp/ddev-drupal9-solr-test |
| 5 | + mkdir -p $TESTDIR |
| 6 | + export PROJNAME=solrtest |
5 | 7 | export DDEV_NON_INTERACTIVE=true |
6 | 8 | ddev delete -Oy ${PROJNAME} || true |
7 | 9 | cd "${TESTDIR}" |
8 | 10 | ddev config --project-name=${PROJNAME} --project-type=drupal9 --docroot=web --create-docroot |
| 11 | + echo "# Setting up Drupal project via composer ${PROJNAME} in ${TESTDIR} ($(pwd))" >&3 |
9 | 12 | ddev composer create -y -n --no-install drupal/recommended-project |
10 | 13 | ddev composer require -n --no-install drush/drush:* drupal/search_api_solr |
11 | | - ddev composer install -n |
| 14 | + ddev composer config --append -- allow-plugins true |
| 15 | + ddev composer install |
12 | 16 | ddev import-db --src=${DIR}/tests/testdata/db.sql.gz |
13 | 17 | } |
14 | 18 |
|
15 | 19 | teardown() { |
16 | | - cd ${TESTDIR} |
| 20 | + cd ${TESTDIR} || ( printf "unable to cd to ${TESTDIR}\n" && exit 1 ) |
17 | 21 | ddev delete -Oy ${DDEV_SITENAME} |
18 | | - rm -rf ${TESTDIR} |
| 22 | + [ "${TESTDIR}" != "" ] && rm -rf ${TESTDIR} |
19 | 23 | } |
20 | 24 |
|
21 | | -@test "basic installation" { |
22 | | - cd ${TESTDIR} |
| 25 | +@test "install from directory" { |
| 26 | + set -eu -o pipefail |
| 27 | + cd ${TESTDIR} || ( printf "unable to cd to ${TESTDIR}\n" && exit 1 ) |
| 28 | + echo "# ddev get drud/ddev-drupal9-solr with project ${PROJNAME} in ${TESTDIR} ($(pwd))" >&3 |
23 | 29 | ddev get ${DIR} |
24 | 30 | ddev restart |
25 | 31 | status=$(ddev exec 'drush sapi-sl --format=json | jq -r .default_solr_server.status') |
26 | 32 | [ "${status}" = "enabled" ] |
27 | | - sleep 10 # After a restart, the solr server may not be ready yet. |
| 33 | + ddev drush search-api-solr:reload default_solr_server |
| 34 | +} |
| 35 | + |
| 36 | +@test "install from release" { |
| 37 | + set -eu -o pipefail |
| 38 | + cd ${TESTDIR} || ( printf "unable to cd to ${TESTDIR}\n" && exit 1 ) |
| 39 | + echo "# ddev get drud/ddev-drupal9-solr with project ${PROJNAME} in ${TESTDIR} ($(pwd))" >&3 |
| 40 | + ddev get drud/ddev-drupal9-solr |
| 41 | + ddev restart |
| 42 | + status=$(ddev exec 'drush sapi-sl --format=json | jq -r .default_solr_server.status') |
| 43 | + [ "${status}" = "enabled" ] |
28 | 44 | ddev drush search-api-solr:reload default_solr_server |
29 | 45 | } |
0 commit comments