build: false
shallow_clone: true
platform: 'x86'
clone_folder: C:\projects\drush
matrix:
  allow_failures:
    # Don't record a failure until we have a passing test suite.
    - UNISH_NO_TIMEOUTS: y
branches:
  only:
    - master
    - 8.x

init:
  #https://github.com/composer/composer/blob/master/appveyor.yml
  #- SET ANSICON=121x90 (121x90)

# Inspired by https://github.com/Codeception/base/blob/master/appveyor.yml and https://github.com/phpmd/phpmd/blob/master/appveyor.yml
install:
  - cinst -y curl
  - SET PATH=C:\Program Files\curl;%PATH%
  #which is only needed by the test suite.
  - cinst -y which
  - SET PATH=C:\Program Files\which;%PATH%
  - git clone -q https://github.com/acquia/DevDesktopCommon.git #For tar, cksum, ...
  - SET PATH=%APPVEYOR_BUILD_FOLDER%/DevDesktopCommon/bintools-win/msys/bin;%PATH%
  - SET PATH=C:\Program Files\MySql\MySQL Server 5.7\bin\;%PATH%
  #Install PHP
  - cinst -y php
  - cd c:\tools\php
  - copy php.ini-production php.ini

  - echo extension_dir=ext >> php.ini
  - echo extension=php_openssl.dll >> php.ini
  - echo date.timezone="UTC" >> php.ini
  - echo variables_order="EGPCS" >> php.ini #Debugging related to https://github.com/drush-ops/drush/pull/646. May be unneeded.
  - echo mbstring.http_input=pass >> php.ini
  - echo mbstring.http_output=pass >> php.ini
  - echo sendmail_path=nul >> php.ini
  - echo extension=php_mbstring.dll >> php.ini
  - echo extension=php_curl.dll >> php.ini
  - echo extension=php_pdo_mysql.dll >> php.ini
  - echo extension=php_pdo_pgsql.dll >> php.ini
  - echo extension=php_pdo_sqlite.dll >> php.ini
  - echo extension=php_pgsql.dll >> php.ini
  - echo extension=php_gd2.dll >> php.ini
  - SET PATH=C:\tools\php;%PATH%
  #Install Composer
  - cd %APPVEYOR_BUILD_FOLDER%
  #- appveyor DownloadFile https://getcomposer.org/composer.phar
  - php -r "readfile('http://getcomposer.org/installer');" | php
  #Install Drush's dependencies via Composer
  - php composer.phar -q install --prefer-dist -n
  - SET PATH=%APPVEYOR_BUILD_FOLDER%;%APPVEYOR_BUILD_FOLDER%/vendor/bin;%PATH%
  #Create a sandbox for testing.
  - mkdir c:\drush_temp

services:
  - mysql

test_script:
  - phpunit --configuration tests %PHPUNIT_ARGS%

# environment variables
environment:
  global:
      UNISH_NO_TIMEOUTS: y
      UNISH_DB_URL: "mysql://root:Password12!@localhost"
      UNISH_TMP: c:\drush_temp

  matrix:
  - UNISH_DRUPAL_MAJOR_VERSION: 7
    PHPUNIT_ARGS: --group=base

  - UNISH_DRUPAL_MAJOR_VERSION: 7
    PHPUNIT_ARGS: --group=commands

  - UNISH_DRUPAL_MAJOR_VERSION: 7
    PHPUNIT_ARGS: --group=pm

  - UNISH_DRUPAL_MAJOR_VERSION: 7
    PHPUNIT_ARGS: --group=quick-drupal

  - UNISH_DRUPAL_MAJOR_VERSION: 7
    PHPUNIT_ARGS: --exclude-group=base,make,commands,pm,quick-drupal

  - UNISH_DRUPAL_MAJOR_VERSION: 7
    PHPUNIT_ARGS: --group=make
