[BUGFIX] Empty item group in selectElement
[Packages/TYPO3.CMS.git] / .travis.yml
index 3ee0301..ba9dfa2 100644 (file)
@@ -1,11 +1,16 @@
 language: php
 
-php:
-  - 5.5
-  - 5.6
+matrix:
+  allow_failures:
+    - php: 7
 
-env:
-  - DB=mysql
+  include:
+    - php: 5.5
+      env: UNIT_TESTS=yes FUNCTIONAL_TESTS=yes PHP_LINT=yes XLF_CHECK=yes SUBMODULE_TEST=yes
+    - php: 5.6
+      env: UNIT_TESTS=yes FUNCTIONAL_TESTS=yes PHP_LINT=yes
+    - php: 7
+      env: UNIT_TESTS=yes
 
 services:
   - memcached
@@ -20,35 +25,54 @@ notifications:
     use_notice: true
   slack:
     rooms:
-      secure: a7c9Nw3KblUQsO4np7Sa685y7tqSJ5nSvzO8hnFjKEeQlgkbnC7Qq2TBvVSr92A1UMouL+6E9ngp3cb7rSYWsNKIaHn51CjhrvlfFElTZ0qd/jLVNDf1B765i0txiIZLLed0e3871/151xBgnggsXC4hcv4mPGc9g//ZPabp++E=
+      secure: nHWVTPyG3CQWIcYA1LASS11dD0/NBcmrAyr3xxQW0XYtH47ZUKRlEtxrVLuL7ptciNwMbfZgsiRQ1QGWDerHUlBkg0iwRxpUZgeylzWaiXsHFVAp2IBfEX54KrWeYm9gewIBDDtnp+sLgpXGgmpIs2bAGkZe5129UsUExoWh0+g=
     on_success: change
     on_failure: always
 
 before_script:
-  - echo "extension = memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
-  - echo "extension = redis.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
+  - if [ -e ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini ]; then echo "extension = memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi
+  - if [ -e ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini ]; then echo "extension = redis.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi
   - sudo apt-get install parallel
+  - rm -rf typo3/sysext/compatibility6
   - composer self-update
-  - composer --dev install
+  - composer install
 
 script:
   - >
-    echo;
-    echo "Running unit tests";
-    ./bin/phpunit --colors -c typo3/sysext/core/Build/UnitTests.xml
+    if [[ "$UNIT_TESTS" == "yes" ]]; then
+      echo;
+      echo "Running unit tests";
+      ./bin/phpunit --colors -c typo3/sysext/core/Build/UnitTests.xml
+    fi
   - >
-    echo;
-    export typo3DatabaseName="typo3";
-    export typo3DatabaseHost="localhost";
-    export typo3DatabaseUsername="root";
-    export typo3DatabasePassword="";
-    find . -wholename '*typo3/sysext/*/Tests/Functional/*Test.php' | parallel --gnu 'echo; echo "Running functional test suite {}"; ./bin/phpunit --colors -c typo3/sysext/core/Build/FunctionalTests.xml {}'
+    if [[ "$FUNCTIONAL_TESTS" == "yes" ]]; then
+        echo;
+        export typo3DatabaseName="typo3";
+        export typo3DatabaseHost="localhost";
+        export typo3DatabaseUsername="root";
+        export typo3DatabasePassword="";
+        find . -wholename '*typo3/sysext/*/Tests/Functional/*Test.php' | parallel --gnu 'echo; echo "Running functional test suite {}"; ./bin/phpunit --colors -c typo3/sysext/core/Build/FunctionalTests.xml {}'
+    fi
   - >
-    echo;
-    echo "Running php lint";
-    /bin/bash -c "
-        if ! find typo3/ -name \*.php | parallel --gnu 'php -l {}' > /tmp/errors 2>&1; then
-            grep -v \"No syntax errors detected in\" /tmp/errors;
-            exit 99;
-        fi
-    "
+    if [[ "$PHP_LINT" == "yes" ]]; then
+        echo;
+        echo "Running php lint";
+        find typo3/ -name \*.php -not -path "typo3/contrib/vendor/*" | parallel --gnu php -d display_errors=stderr -l {} > /dev/null \;
+    fi
+  - >
+    if [[ "$XLF_CHECK" == "yes" ]]; then
+        echo;
+        echo "Running XLF checker";
+        ./typo3/sysext/core/Build/Scripts/xlfcheck.sh
+    fi
+  - >
+      if [[ "$SUBMODULE_TEST" == "yes" ]]; then
+          echo;
+          echo "Running git submodule check";
+          /bin/bash -c "
+              if [[ `git submodule status 2>&1 | wc -l` -ne 0 ]]; then
+                  echo \"Found a submodule definition in repository\";
+                  exit 99;
+              fi
+          "
+      fi