From 3de95af25cdee5cc07d039f71d5fd4d3f3bde9e1 Mon Sep 17 00:00:00 2001 From: Alan Ren Date: Thu, 5 Dec 2019 15:57:13 -0800 Subject: [PATCH] check setting directly to avoid value reset (#8583) --- extensions/integration-tests/src/cms.test.ts | 4 ++-- extensions/integration-tests/src/dacpac.test.ts | 4 ++-- extensions/integration-tests/src/index.ts | 9 --------- extensions/integration-tests/src/notebook.test.ts | 4 ++-- extensions/integration-tests/src/objectExplorer.test.ts | 4 ++-- extensions/integration-tests/src/schemaCompare.test.ts | 4 ++-- extensions/integration-tests/src/setup.test.ts | 4 ++-- extensions/integration-tests/src/testContext.ts | 8 +++++--- 8 files changed, 17 insertions(+), 24 deletions(-) diff --git a/extensions/integration-tests/src/cms.test.ts b/extensions/integration-tests/src/cms.test.ts index 2ef798f8dc..c6bacff399 100644 --- a/extensions/integration-tests/src/cms.test.ts +++ b/extensions/integration-tests/src/cms.test.ts @@ -9,7 +9,7 @@ import * as azdata from 'azdata'; import * as mssql from '../../mssql'; import * as utils from './utils'; import * as uuid from './uuid'; -import { context } from './testContext'; +import { isTestSetupCompleted } from './testContext'; import assert = require('assert'); import { getStandaloneServer, TestServerProfile, getBdcServer } from './testConfig'; @@ -23,7 +23,7 @@ const TEST_CMS_GROUP = `adsTestCmsGroup_${uuid.v4()}`; const TEST_CMS_SERVER = `adsTestCmsServer_${uuid.v4()}`; const TEST_CMS_REG_SERVER = `adsTestCmsRegisteredServer_${uuid.v4()}`; -if (context.RunTest) { +if (isTestSetupCompleted()) { suite('CMS integration test suite', () => { setup(async function () { diff --git a/extensions/integration-tests/src/dacpac.test.ts b/extensions/integration-tests/src/dacpac.test.ts index 13584585fa..b4614a97bb 100644 --- a/extensions/integration-tests/src/dacpac.test.ts +++ b/extensions/integration-tests/src/dacpac.test.ts @@ -11,13 +11,13 @@ import * as fs from 'fs'; import * as os from 'os'; import * as mssql from '../../mssql'; import * as vscode from 'vscode'; -import { context } from './testContext'; +import { isTestSetupCompleted } from './testContext'; import { getStandaloneServer } from './testConfig'; import * as assert from 'assert'; const retryCount = 24; // 2 minutes const dacpac1: string = path.join(__dirname, '../testData/Database1.dacpac'); -if (context.RunTest) { +if (isTestSetupCompleted()) { suite('Dacpac integration test suite', () => { suiteSetup(async function () { await utils.sleep(5000); // To ensure the providers are registered. diff --git a/extensions/integration-tests/src/index.ts b/extensions/integration-tests/src/index.ts index 06db934db6..55b7fbb2d3 100644 --- a/extensions/integration-tests/src/index.ts +++ b/extensions/integration-tests/src/index.ts @@ -4,12 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import * as testRunner from 'vscode/lib/testrunner'; -import * as vscode from 'vscode'; - import { SuiteType, getSuiteType } from 'adstest'; - -import { context } from './testContext'; - import * as path from 'path'; const suite = getSuiteType(); @@ -62,10 +57,6 @@ if (process.env.BUILD_ARTIFACTSTAGINGDIRECTORY) { }; } -if (!vscode.workspace.getConfiguration('test')['testSetupCompleted']) { - context.RunTest = false; -} - testRunner.configure(options); export = testRunner; diff --git a/extensions/integration-tests/src/notebook.test.ts b/extensions/integration-tests/src/notebook.test.ts index 7f309c0933..c4f674974b 100644 --- a/extensions/integration-tests/src/notebook.test.ts +++ b/extensions/integration-tests/src/notebook.test.ts @@ -7,7 +7,7 @@ import 'mocha'; import * as assert from 'assert'; import * as azdata from 'azdata'; import * as vscode from 'vscode'; -import { context } from './testContext'; +import { isTestSetupCompleted } from './testContext'; import { sqlNotebookContent, writeNotebookToFile, sqlKernelMetadata, getFileName, pySparkNotebookContent, pySparkKernelMetadata, pythonKernelMetadata, sqlNotebookMultipleCellsContent, notebookContentForCellLanguageTest, sqlKernelSpec, pythonKernelSpec, pySparkKernelSpec, CellTypes } from './notebook.util'; import { getBdcServer, getConfigValue, EnvironmentVariable_PYTHON_PATH } from './testConfig'; import { connectToServer, sleep } from './utils'; @@ -15,7 +15,7 @@ import * as fs from 'fs'; import { stressify } from 'adstest'; import { isNullOrUndefined } from 'util'; -if (context.RunTest) { +if (isTestSetupCompleted()) { suite('Notebook integration test suite', function () { setup(async function () { console.log(`Start "${this.currentTest.title}"`); diff --git a/extensions/integration-tests/src/objectExplorer.test.ts b/extensions/integration-tests/src/objectExplorer.test.ts index cac4fd90a0..61bd1b2811 100644 --- a/extensions/integration-tests/src/objectExplorer.test.ts +++ b/extensions/integration-tests/src/objectExplorer.test.ts @@ -5,13 +5,13 @@ import 'mocha'; import * as azdata from 'azdata'; -import { context } from './testContext'; +import { isTestSetupCompleted } from './testContext'; import { getBdcServer, TestServerProfile, getAzureServer, getStandaloneServer } from './testConfig'; import { connectToServer, createDB, deleteDB, DefaultConnectTimeoutInMs, asyncTimeout } from './utils'; import * as assert from 'assert'; import { stressify } from 'adstest'; -if (context.RunTest) { +if (isTestSetupCompleted()) { suite('Object Explorer integration suite', () => { test('BDC instance node label test', async function () { return await (new ObjectExplorerTester()).bdcNodeLabelTest(); diff --git a/extensions/integration-tests/src/schemaCompare.test.ts b/extensions/integration-tests/src/schemaCompare.test.ts index d4b7524c0f..ef76b9db95 100644 --- a/extensions/integration-tests/src/schemaCompare.test.ts +++ b/extensions/integration-tests/src/schemaCompare.test.ts @@ -11,7 +11,7 @@ import * as mssql from '../../mssql'; import * as os from 'os'; import * as fs from 'fs'; const path = require('path'); -import { context } from './testContext'; +import { isTestSetupCompleted } from './testContext'; import * as assert from 'assert'; import { getStandaloneServer } from './testConfig'; import { stressify } from 'adstest'; @@ -25,7 +25,7 @@ const SERVER_CONNECTION_TIMEOUT: number = 3000; const retryCount = 24; // 2 minutes const folderPath = path.join(os.tmpdir(), 'SchemaCompareTest'); -if (context.RunTest) { +if (isTestSetupCompleted()) { suite('Schema compare integration test suite', () => { suiteSetup(async function () { let attempts: number = 20; diff --git a/extensions/integration-tests/src/setup.test.ts b/extensions/integration-tests/src/setup.test.ts index 1f54d7819f..9d81f7cd21 100644 --- a/extensions/integration-tests/src/setup.test.ts +++ b/extensions/integration-tests/src/setup.test.ts @@ -5,7 +5,7 @@ import 'mocha'; import * as vscode from 'vscode'; -import { context } from './testContext'; +import { isTestSetupCompleted } from './testContext'; import * as assert from 'assert'; import { getConfigValue, EnvironmentVariable_BDC_SERVER, EnvironmentVariable_BDC_USERNAME, EnvironmentVariable_BDC_PASSWORD, EnvironmentVariable_AZURE_PASSWORD, EnvironmentVariable_AZURE_SERVER, EnvironmentVariable_AZURE_USERNAME, EnvironmentVariable_STANDALONE_PASSWORD, EnvironmentVariable_STANDALONE_SERVER, EnvironmentVariable_STANDALONE_USERNAME, EnvironmentVariable_PYTHON_PATH } from './testConfig'; @@ -20,7 +20,7 @@ assert(getConfigValue(EnvironmentVariable_BDC_SERVER) !== undefined && getConfigValue(EnvironmentVariable_STANDALONE_USERNAME) !== undefined && getConfigValue(EnvironmentVariable_PYTHON_PATH) !== undefined, 'Required environment variables are not set, if you see this error in the build pipeline, make sure the environment variables are set properly in the build definition, otherwise for local dev environment make sure you follow the instructions in the readme file.'); -if (!context.RunTest) { +if (!isTestSetupCompleted()) { suite('integration test setup', () => { test('test setup', async function () { this.timeout(5 * 60 * 1000); diff --git a/extensions/integration-tests/src/testContext.ts b/extensions/integration-tests/src/testContext.ts index ddad231886..ef3da02321 100644 --- a/extensions/integration-tests/src/testContext.ts +++ b/extensions/integration-tests/src/testContext.ts @@ -3,6 +3,8 @@ * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -export let context = { - RunTest: true -}; +import * as vscode from 'vscode'; + +export function isTestSetupCompleted(): boolean { + return vscode.workspace.getConfiguration('test')['testSetupCompleted']; +}