Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/microsoft/vscode.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'build/azure-pipelines/win32/product-build-win32-test.yml')
-rw-r--r--build/azure-pipelines/win32/product-build-win32-test.yml225
1 files changed, 139 insertions, 86 deletions
diff --git a/build/azure-pipelines/win32/product-build-win32-test.yml b/build/azure-pipelines/win32/product-build-win32-test.yml
index 9dc50f8bcc4..59c91cd2b13 100644
--- a/build/azure-pipelines/win32/product-build-win32-test.yml
+++ b/build/azure-pipelines/win32/product-build-win32-test.yml
@@ -1,4 +1,6 @@
parameters:
+ - name: VSCODE_QUALITY
+ type: string
- name: VSCODE_RUN_UNIT_TESTS
type: boolean
- name: VSCODE_RUN_INTEGRATION_TESTS
@@ -15,29 +17,51 @@ steps:
displayName: Download Electron and Playwright
- ${{ if eq(parameters.VSCODE_RUN_UNIT_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- exec { yarn electron $(VSCODE_ARCH) }
- exec { .\scripts\test.bat --build --tfs "Unit Tests" }
- displayName: Run unit tests (Electron)
- timeoutInMinutes: 15
-
- - ${{ if eq(parameters.VSCODE_RUN_UNIT_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- exec { yarn test-node --build }
- displayName: Run unit tests (node.js)
- timeoutInMinutes: 15
-
- - ${{ if eq(parameters.VSCODE_RUN_UNIT_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- exec { yarn test-browser-no-install --sequential --build --browser chromium --browser firefox --tfs "Browser Unit Tests" }
- displayName: Run unit tests (Browser, Chromium & Firefox)
- timeoutInMinutes: 20
+ - ${{ if eq(parameters.VSCODE_QUALITY, 'oss') }}:
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { yarn electron $(VSCODE_ARCH) }
+ exec { .\scripts\test.bat --tfs "Unit Tests" }
+ displayName: Run unit tests (Electron)
+ timeoutInMinutes: 15
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { yarn test-node }
+ displayName: Run unit tests (node.js)
+ timeoutInMinutes: 15
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { node test/unit/browser/index.js --sequential --browser chromium --browser firefox --tfs "Browser Unit Tests" }
+ displayName: Run unit tests (Browser, Chromium & Firefox)
+ timeoutInMinutes: 20
+
+ - ${{ if ne(parameters.VSCODE_QUALITY, 'oss') }}:
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { yarn electron $(VSCODE_ARCH) }
+ exec { .\scripts\test.bat --build --tfs "Unit Tests" }
+ displayName: Run unit tests (Electron)
+ timeoutInMinutes: 15
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { yarn test-node --build }
+ displayName: Run unit tests (node.js)
+ timeoutInMinutes: 15
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { yarn test-browser-no-install --sequential --build --browser chromium --browser firefox --tfs "Browser Unit Tests" }
+ displayName: Run unit tests (Browser, Chromium & Firefox)
+ timeoutInMinutes: 20
- ${{ if eq(parameters.VSCODE_RUN_INTEGRATION_TESTS, true) }}:
- powershell: |
@@ -64,38 +88,58 @@ steps:
}
displayName: Build integration tests
- - ${{ if eq(parameters.VSCODE_RUN_INTEGRATION_TESTS, true) }}:
- - powershell: |
- # Figure out the full absolute path of the product we just built
- # including the remote server and configure the integration tests
- # to run with these builds instead of running out of sources.
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
- $AppProductJson = Get-Content -Raw -Path "$AppRoot\resources\app\product.json" | ConvertFrom-Json
- $AppNameShort = $AppProductJson.nameShort
- exec { $env:INTEGRATION_TEST_ELECTRON_PATH = "$AppRoot\$AppNameShort.exe"; $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-win32-$(VSCODE_ARCH)"; .\scripts\test-integration.bat --build --tfs "Integration Tests" }
- displayName: Run integration tests (Electron)
- timeoutInMinutes: 20
-
- - ${{ if eq(parameters.VSCODE_RUN_INTEGRATION_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- exec { $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-web-win32-$(VSCODE_ARCH)"; .\scripts\test-web-integration.bat --browser firefox }
- displayName: Run integration tests (Browser, Firefox)
- timeoutInMinutes: 20
-
- - ${{ if eq(parameters.VSCODE_RUN_INTEGRATION_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
- $AppProductJson = Get-Content -Raw -Path "$AppRoot\resources\app\product.json" | ConvertFrom-Json
- $AppNameShort = $AppProductJson.nameShort
- exec { $env:INTEGRATION_TEST_ELECTRON_PATH = "$AppRoot\$AppNameShort.exe"; $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-win32-$(VSCODE_ARCH)"; .\scripts\test-remote-integration.bat }
- displayName: Run integration tests (Remote)
- timeoutInMinutes: 20
+ - ${{ if eq(parameters.VSCODE_QUALITY, 'oss') }}:
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { .\scripts\test-integration.bat --tfs "Integration Tests" }
+ displayName: Run integration tests (Electron)
+ timeoutInMinutes: 20
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { .\scripts\test-web-integration.bat --browser firefox }
+ displayName: Run integration tests (Browser, Firefox)
+ timeoutInMinutes: 20
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { .\scripts\test-remote-integration.bat }
+ displayName: Run integration tests (Remote)
+ timeoutInMinutes: 20
+
+ - ${{ if ne(parameters.VSCODE_QUALITY, 'oss') }}:
+ - powershell: |
+ # Figure out the full absolute path of the product we just built
+ # including the remote server and configure the integration tests
+ # to run with these builds instead of running out of sources.
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
+ $AppProductJson = Get-Content -Raw -Path "$AppRoot\resources\app\product.json" | ConvertFrom-Json
+ $AppNameShort = $AppProductJson.nameShort
+ exec { $env:INTEGRATION_TEST_ELECTRON_PATH = "$AppRoot\$AppNameShort.exe"; $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-win32-$(VSCODE_ARCH)"; .\scripts\test-integration.bat --build --tfs "Integration Tests" }
+ displayName: Run integration tests (Electron)
+ timeoutInMinutes: 20
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-web-win32-$(VSCODE_ARCH)"; .\scripts\test-web-integration.bat --browser firefox }
+ displayName: Run integration tests (Browser, Firefox)
+ timeoutInMinutes: 20
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
+ $AppProductJson = Get-Content -Raw -Path "$AppRoot\resources\app\product.json" | ConvertFrom-Json
+ $AppNameShort = $AppProductJson.nameShort
+ exec { $env:INTEGRATION_TEST_ELECTRON_PATH = "$AppRoot\$AppNameShort.exe"; $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-win32-$(VSCODE_ARCH)"; .\scripts\test-remote-integration.bat }
+ displayName: Run integration tests (Remote)
+ timeoutInMinutes: 20
- ${{ if eq(parameters.VSCODE_RUN_SMOKE_TESTS, true) }}:
- powershell: |
@@ -105,36 +149,47 @@ steps:
continueOnError: true
condition: succeededOrFailed()
- - ${{ if eq(parameters.VSCODE_RUN_SMOKE_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-web-win32-$(VSCODE_ARCH)"
- exec { yarn smoketest-no-compile --web --tracing --headless }
- displayName: Run smoke tests (Browser, Chromium)
- timeoutInMinutes: 20
-
- - ${{ if eq(parameters.VSCODE_RUN_SMOKE_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
- exec { yarn smoketest-no-compile --tracing --build "$AppRoot" }
- displayName: Run smoke tests (Electron)
- timeoutInMinutes: 20
-
- - ${{ if eq(parameters.VSCODE_RUN_SMOKE_TESTS, true) }}:
- - powershell: |
- . build/azure-pipelines/win32/exec.ps1
- $ErrorActionPreference = "Stop"
- $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
- $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-win32-$(VSCODE_ARCH)"
- exec { yarn gulp compile-extension:vscode-test-resolver }
- exec { yarn smoketest-no-compile --tracing --remote --build "$AppRoot" }
- displayName: Run smoke tests (Remote)
- timeoutInMinutes: 20
+ - ${{ if eq(parameters.VSCODE_QUALITY, 'oss') }}:
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { yarn --cwd test/smoke compile }
+ displayName: Compile smoke tests
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ exec { yarn smoketest-no-compile --tracing }
+ displayName: Run smoke tests (Electron)
+ timeoutInMinutes: 20
+
+ - ${{ if ne(parameters.VSCODE_QUALITY, 'oss') }}:
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
+ exec { yarn smoketest-no-compile --tracing --build "$AppRoot" }
+ displayName: Run smoke tests (Electron)
+ timeoutInMinutes: 20
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-web-win32-$(VSCODE_ARCH)"
+ exec { yarn smoketest-no-compile --web --tracing --headless }
+ displayName: Run smoke tests (Browser, Chromium)
+ timeoutInMinutes: 20
+
+ - powershell: |
+ . build/azure-pipelines/win32/exec.ps1
+ $ErrorActionPreference = "Stop"
+ $AppRoot = "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)"
+ $env:VSCODE_REMOTE_SERVER_PATH = "$(agent.builddirectory)\vscode-reh-win32-$(VSCODE_ARCH)"
+ exec { yarn gulp compile-extension:vscode-test-resolver }
+ exec { yarn smoketest-no-compile --tracing --remote --build "$AppRoot" }
+ displayName: Run smoke tests (Remote)
+ timeoutInMinutes: 20
- - ${{ if eq(parameters.VSCODE_RUN_SMOKE_TESTS, true) }}:
- powershell: |
. build/azure-pipelines/win32/exec.ps1
exec {.\build\azure-pipelines\win32\listprocesses.bat }
@@ -156,7 +211,6 @@ steps:
continueOnError: true
condition: failed()
- - ${{ if or(eq(parameters.VSCODE_RUN_INTEGRATION_TESTS, true), eq(parameters.VSCODE_RUN_SMOKE_TESTS, true)) }}:
# In order to properly symbolify above crash reports
# (if any), we need the compiled native modules too
- task: PublishPipelineArtifact@0
@@ -172,7 +226,6 @@ steps:
continueOnError: true
condition: failed()
- - ${{ if or(eq(parameters.VSCODE_RUN_INTEGRATION_TESTS, true), eq(parameters.VSCODE_RUN_SMOKE_TESTS, true)) }}:
- task: PublishPipelineArtifact@0
inputs:
targetPath: .build\logs