summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/test.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/scripts/test.sh b/scripts/test.sh
new file mode 100644
index 0000000..70554be
--- /dev/null
+++ b/scripts/test.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+set -e
+
+COMPOSER_PHAR="/root/.composer/composer.phar"
+WORKDIR="/tmp/app"
+
+# Copy project to isolated working directory
+rm -rf "$WORKDIR"
+cp -r /app "$WORKDIR"
+cd "$WORKDIR"
+
+# Remove lock file and vendor for fresh install
+rm -f composer.lock
+rm -rf vendor/
+
+# Download Composer if not cached
+if [ ! -f "$COMPOSER_PHAR" ]; then
+ echo "Downloading Composer..."
+ mkdir -p /root/.composer
+ curl -sS https://getcomposer.org/installer | php -- --install-dir=/root/.composer --filename=composer.phar
+fi
+
+# Install dependencies
+echo "COMPOSER_FLAGS: ${COMPOSER_FLAGS:-<empty>}"
+php "$COMPOSER_PHAR" update --no-interaction ${COMPOSER_FLAGS:-}
+
+# Run tests
+php "$COMPOSER_PHAR" test