Move the tests out to their own tasks (#11179)

* Move the tests out to their own tasks

* Revert change

* Lets try this

* Actually reference to the tests

* Lets try this

* lets try this too?

* this one?

* Manually define them :(

* Formatting

* Add the node command

* Fix machine learning and address comments
This commit is contained in:
Amir Omidi
2020-07-02 17:51:21 -07:00
committed by GitHub
parent ecfac10949
commit 2d989e1180
3 changed files with 20 additions and 13 deletions

View File

@@ -1,3 +1,6 @@
parameters:
extensionsToUnitTest: []
steps: steps:
- script: | - script: |
mkdir -p .build mkdir -p .build
@@ -126,14 +129,15 @@ steps:
displayName: Run integration tests (Electron) displayName: Run integration tests (Electron)
condition: and(succeeded(), eq(variables['RUN_TESTS'], 'true')) condition: and(succeeded(), eq(variables['RUN_TESTS'], 'true'))
- script: | - ${{each extension in parameters.extensionsToUnitTest}}:
set -e - script: |
APP_ROOT=$(agent.builddirectory)/azuredatastudio-linux-x64 set -e
APP_NAME=$(node -p "require(\"$APP_ROOT/resources/app/product.json\").applicationName") APP_ROOT=$(agent.builddirectory)/azuredatastudio-linux-x64
INTEGRATION_TEST_ELECTRON_PATH="$APP_ROOT/$APP_NAME" \ APP_NAME=$(node -p "require(\"$APP_ROOT/resources/app/product.json\").applicationName")
DISPLAY=:10 ./scripts/test-extensions-unit.sh INTEGRATION_TEST_ELECTRON_PATH="$APP_ROOT/$APP_NAME" \
displayName: 'Run Stable Extension Unit Tests' DISPLAY=:10 node ./scripts/test-extensions-unit.js ${{ extension }}
condition: and(succeeded(), eq(variables['RUN_TESTS'], 'true')) displayName: 'Run ${{ extension }} Stable Extension Unit Tests'
condition: and(succeeded(), eq(variables['RUN_TESTS'], 'true'))
- script: | - script: |
set -e set -e

View File

@@ -45,6 +45,8 @@ jobs:
- Compile - Compile
steps: steps:
- template: linux/sql-product-build-linux.yml - template: linux/sql-product-build-linux.yml
parameters:
extensionsToUnitTest: ["admin-tool-ext-win", "agent", "azurecore", "cms", "dacpac", "import", "schema-compare", "notebook", "resource-deployment", "machine-learning", "sql-database-projects"]
timeoutInMinutes: 70 timeoutInMinutes: 70
- job: LinuxWeb - job: LinuxWeb

View File

@@ -20,7 +20,7 @@ const extensionList = [
//'mssql', //'mssql',
'notebook', 'notebook',
'resource-deployment', 'resource-deployment',
'machine-learning-services', 'machine-learning',
'sql-database-projects']; 'sql-database-projects'];
let argv = require('yargs') let argv = require('yargs')
@@ -63,11 +63,12 @@ for (const ext of argv.extensions) {
console.log(`*** starting ${ext} tests ***`); console.log(`*** starting ${ext} tests ***`);
console.log('*'.repeat(ext.length + 23)); console.log('*'.repeat(ext.length + 23));
const command = `${process.env.INTEGRATION_TEST_ELECTRON_PATH} --extensionDevelopmentPath=${path.join(__dirname, '..', 'extensions', ext)} --extensionTestsPath=${path.join(__dirname, '..', 'extensions', ext, 'out', 'test')} --user-data-dir=${VSCODEUSERDATADIR} --extensions-dir=${VSCODEEXTENSIONSDIR} --remote-debugging-port=9222 --disable-telemetry --disable-crash-reporter --disable-updates --nogpu`; const command = `${process.env.INTEGRATION_TEST_ELECTRON_PATH} --no-sandbox --extensionDevelopmentPath=${path.join(__dirname, '..', 'extensions', ext)} --extensionTestsPath=${path.join(__dirname, '..', 'extensions', ext, 'out', 'test')} --user-data-dir=${VSCODEUSERDATADIR} --extensions-dir=${VSCODEEXTENSIONSDIR} --remote-debugging-port=9222 --disable-telemetry --disable-crash-reporter --disable-updates --nogpu`;
console.log(execSync(command, {stdio: 'inherit'})); console.log(`Command used: ${command}`);
console.log(execSync(command, { stdio: 'inherit' }));
} }
// clean up // clean up
fs.remove(VSCODEUSERDATADIR, { recursive: true }); fs.remove(VSCODEUSERDATADIR, { recursive: true }).catch(console.error);
fs.remove(VSCODEEXTENSIONSDIR, { recursive: true }); fs.remove(VSCODEEXTENSIONSDIR, { recursive: true }).catch(console.error);