tests: fix test in app.head
[express.git] / appveyor.yml
blob062d8ce539efe69a9f31cd18c5d50d94e36cfe6f
1 environment:
2   matrix:
3     - nodejs_version: "0.10"
4     - nodejs_version: "0.12"
5     - nodejs_version: "1.8"
6     - nodejs_version: "2.5"
7     - nodejs_version: "3.3"
8     - nodejs_version: "4.9"
9     - nodejs_version: "5.12"
10     - nodejs_version: "6.17"
11     - nodejs_version: "7.10"
12     - nodejs_version: "8.17"
13     - nodejs_version: "9.11"
14     - nodejs_version: "10.24"
15     - nodejs_version: "11.15"
16     - nodejs_version: "12.22"
17 cache:
18   - node_modules
19 install:
20   # Install Node.js
21   - ps: >-
22       try { Install-Product node $env:nodejs_version -ErrorAction Stop }
23       catch { Update-NodeJsInstallation (Get-NodeJsLatestBuild $env:nodejs_version) }
24   # Configure npm
25   - ps: |
26       npm config set loglevel error
27       npm config set shrinkwrap false
28   # Remove all non-test dependencies
29   - ps: |
30       # Remove example dependencies
31       npm rm --silent --save-dev connect-redis
32       # Remove lint dependencies
33       cmd.exe /c "node -pe `"Object.keys(require('./package').devDependencies).join('\n')`"" | `
34         sls "^eslint(-|$)" | `
35         %{ npm rm --silent --save-dev $_ }
36   # Setup Node.js version-specific dependencies
37   - ps: |
38       # mocha for testing
39       # - use 3.x for Node.js < 4
40       # - use 5.x for Node.js < 6
41       # - use 6.x for Node.js < 8
42       # - use 7.x for Node.js < 10
43       if ([int]$env:nodejs_version.split(".")[0] -lt 4) {
44         npm install --silent --save-dev mocha@3.5.3
45       } elseif ([int]$env:nodejs_version.split(".")[0] -lt 6) {
46         npm install --silent --save-dev mocha@5.2.0
47       } elseif ([int]$env:nodejs_version.split(".")[0] -lt 8) {
48         npm install --silent --save-dev mocha@6.2.2
49       } elseif ([int]$env:nodejs_version.split(".")[0] -lt 10) {
50         npm install --silent --save-dev mocha@7.2.0
51       }
52   - ps: |
53       # supertest for http calls
54       # - use 2.0.0 for Node.js < 4
55       # - use 3.4.2 for Node.js < 6
56       if ([int]$env:nodejs_version.split(".")[0] -lt 4) {
57         npm install --silent --save-dev supertest@2.0.0
58       } elseif ([int]$env:nodejs_version.split(".")[0] -lt 6) {
59         npm install --silent --save-dev supertest@3.4.2
60       }
61   # Update Node.js modules
62   - ps: |
63       # Prune & rebuild node_modules
64       if (Test-Path -Path node_modules) {
65         npm prune
66         npm rebuild
67       }
68   # Install Node.js modules
69   - npm install
70 build: off
71 test_script:
72   # Output version data
73   - ps: |
74       node --version
75       npm --version
76   # Run test script
77   - npm run test-ci
78 version: "{build}"