environment:
    matrix:
        - RUST_INSTALL_TRIPLE: i686-pc-windows-gnu
          RUST_CHANNEL: stable
        - RUST_INSTALL_TRIPLE: x86_64-pc-windows-gnu
          RUST_CHANNEL: stable
        - RUST_INSTALL_TRIPLE: x86_64-pc-windows-msvc
          RUST_CHANNEL: stable

matrix:
    allow_failures:
        - RUST_CHANNEL: nightly

install:
    - ps: Start-FileDownload "http://static.rust-lang.org/dist/channel-rust-${env:RUST_CHANNEL}"
    - ps: $env:RUST_INSTALLER = Select-String "${env:RUST_INSTALL_TRIPLE}.*exe" "channel-rust-${env:RUST_CHANNEL}" | select -exp line
    - ps: Start-FileDownload "http://static.rust-lang.org/dist/${env:RUST_INSTALLER}"
    - '%RUST_INSTALLER% /VERYSILENT /NORESTART /DIR="C:\Rust"'
    - call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64
    - ps: $env:path = "C:\Rust\bin;" + $env:path
    - ps: |
        if ($env:RUST_INSTALL_TRIPLE -like "x86_64-*-gnu") {
            Start-FileDownload "http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/5.1.0/threads-win32/seh/x86_64-5.1.0-release-win32-seh-rt_v4-rev0.7z/download" -FileName mingw64.7z
            7z x -oC:\ mingw64.7z > $null
            $env:path = "C:\mingw64\bin;" + $env:path
            gcc --version
        }
        elseif ($env:RUST_INSTALL_TRIPLE -like "i686-*-gnu") {
            $env:path = "C:\mingw\bin;" + $env:path
            gcc --version
        }
    - rustc --version --verbose
    - cargo --version

build: false

test_script:
    - cargo build
    - cargo test
