aboutsummaryrefslogblamecommitdiffstatshomepage
path: root/.appveyor.yml
blob: 59400b624d77eace92ff18bf51b36c3abd38f437 (plain) (tree)
1
2
3
4
5
6
7
8
9
                  
 


                      
                      
 

                                        
                                           
 





              
                  
 


                   




                                                  


                                           
             
                                                
            
      
                                               
                             
                                   



                                                                                      
 
            
                                                             
 




                                                                                                                                                                                                                              
 
                                             


                                                                                                                                                                                       
 
    
                                                  





                



                                 
                                                  


                                 

                                                  


                                 
              
                                                  
version: '{build}'

image:
  - Visual Studio 2015
  - Visual Studio 2017
  - Visual Studio 2019

environment:
  python_exe: C:\Python36-x64\python.exe
  install_dir: C:\Projects\install\pdb-repo

platform:
  - Win32
  - x64

configuration:
  - Debug
  - RelWithDebInfo

matrix:
  fast_finish: true

  # On Win32, only build Debug to speed things up:
  exclude:
    - platform: Win32
      configuration: RelWithDebInfo

install:
  - git submodule update --init --recursive

build_script:
  - '"%python_exe%" cmake\tools\clang-format.py'
  - cd cmake
  - >-
    "%python_exe%" -m project.ci.appveyor.cmake
    --install "%install_dir%"
    --boost "%appveyor_boost_root%"

after_build:
  - 7z.exe a "%APPVEYOR_PROJECT_NAME%-%PLATFORM%-%CONFIGURATION%.zip" "%install_dir%"
  - appveyor.exe PushArtifact "%APPVEYOR_PROJECT_NAME%-%PLATFORM%-%CONFIGURATION%.zip"

test_script:
  - '"%install_dir%\bin\test\unit_tests.exe" --log_level=all'

  - '"%install_dir%\bin\enum_symbols.exe" --pdb "%install_dir%\bin\test\test_lib.pdb" --mask "test_ns::*"'
  - ps: '$(& "$env:install_dir\bin\enum_symbols.exe" --pdb "$env:install_dir\bin\test\test_lib.pdb" | Select-String -Pattern "test_ns::baz" -SimpleMatch -Quiet) -or $(throw "test_ns::baz not enumerated among the symbols")'
  - ps: '$(& "$env:install_dir\bin\enum_symbols.exe" --pdb "$env:install_dir\bin\test\test_lib.pdb" | Select-String -Pattern "test_ns::bar" -SimpleMatch -Quiet) -or $(throw "test_ns::bar not enumerated among the symbols")'
  - ps: '$(& "$env:install_dir\bin\enum_symbols.exe" --pdb "$env:install_dir\bin\test\test_lib.pdb" | Select-String -Pattern "test_ns::foo" -SimpleMatch -Quiet) -or $(throw "test_ns::foo not enumerated among the symbols")'
  - ps: '$(& "$env:install_dir\bin\enum_symbols.exe" --pdb "$env:install_dir\bin\test\test_lib.pdb" | Select-String -Pattern "test_ns::var" -SimpleMatch -Quiet) -or $(throw "test_ns::var not enumerated among the symbols")'

  - '"%install_dir%\bin\test\call_stack.exe"'
  - ps: '$(& "$env:install_dir\bin\test\call_stack.exe" | Select-String -Pattern "[test_lib!test_ns::baz" -SimpleMatch -Quiet) -or $(throw "test_ns::baz not found in the call stack")'
  - ps: '$(& "$env:install_dir\bin\test\call_stack.exe" | Select-String -Pattern "[test_lib!test_ns::bar" -SimpleMatch -Quiet) -or $(throw "test_ns::bar not found in the call stack")'
  - ps: '$(& "$env:install_dir\bin\test\call_stack.exe" | Select-String -Pattern "[test_lib!test_ns::foo" -SimpleMatch -Quiet) -or $(throw "test_ns::foo not found in the call stack")'

for:
# Build Release on master only to speed things up:
- branches:
    except:
      - master
  configuration:
    - Debug

- matrix:
    only:
      - image: Visual Studio 2015
  environment:
    appveyor_boost_root: C:\Libraries\boost_1_62_0
- matrix:
    only:
      - image: Visual Studio 2017
  environment:
    appveyor_boost_root: C:\Libraries\boost_1_69_0
- matrix:
    only:
      - image: Visual Studio 2019
  environment:
    appveyor_boost_root: C:\Libraries\boost_1_71_0