Schema Compare tests addition (#5136)

* initial tests for schema compare

* Adding schema compare integration test

* Adding code to fix some build issues

* DB compare test

* Adding some CR comments

* db creation and deletion as per CR comments
This commit is contained in:
udeeshagautam
2019-05-21 11:17:52 -07:00
committed by GitHub
parent c84367e2ee
commit 3fc2ad5bc9
12 changed files with 652 additions and 4 deletions

View File

@@ -36,3 +36,37 @@ export async function connectToServer(server: TestServerProfile, timeout: number
export async function ensureConnectionViewOpened() {
await vscode.commands.executeCommand('dataExplorer.servers.focus');
}
export async function sleep(ms: number): Promise<{}> {
return new Promise(resolve => setTimeout(resolve, ms));
}
export async function createDB(dbName: string, ownerUri: string): Promise<void> {
let queryProvider = azdata.dataprotocol.getProvider<azdata.QueryProvider>('MSSQL', azdata.DataProviderType.QueryProvider);
let query = `BEGIN TRY
CREATE DATABASE ${dbName}
SELECT 1 AS NoError
END TRY
BEGIN CATCH
SELECT ERROR_MESSAGE() AS ErrorMessage;
END CATCH`;
let dbcreatedResult = await queryProvider.runQueryAndReturn(ownerUri, query);
assert(dbcreatedResult.columnInfo[0].columnName !== 'ErrorMessage', 'DB creation threw error');
}
export async function deleteDB(dbName: string, ownerUri: string): Promise<void> {
let queryProvider = azdata.dataprotocol.getProvider<azdata.QueryProvider>('MSSQL', azdata.DataProviderType.QueryProvider);
let query = `BEGIN TRY
ALTER DATABASE ${dbName}
SET OFFLINE
WITH ROLLBACK IMMEDIATE
DROP DATABASE ${dbName}
SELECT 1 AS NoError
END TRY
BEGIN CATCH
SELECT ERROR_MESSAGE() AS ErrorMessage;
END CATCH`;
await queryProvider.runQueryAndReturn(ownerUri, query);
}