Files
azuredatastudio/extensions/dacpac/src/test/testDacFxService.ts
Udeesha Gautam 921beebd79 Test/dacpac tests (#11428)
* Adding test for select operation page and dacpac wizard

* skipping one test for investigation

* Changes as per PR comments
2020-07-20 14:23:27 -07:00

60 lines
3.1 KiB
TypeScript

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import * as azdata from 'azdata';
import * as mssql from '../../../mssql/src/mssql';
export const deployOperationId = 'deploy dacpac';
export const extractOperationId = 'extract dacpac';
export const exportOperationId = 'export bacpac';
export const importOperationId = 'import bacpac';
export const generateScript = 'genenrate script';
export const generateDeployPlan = 'genenrate deploy plan';
export class DacFxTestService implements mssql.IDacFxService {
dacfxResult: mssql.DacFxResult = {
success: true,
operationId: 'test',
errorMessage: ''
};
constructor() {
}
exportBacpac(databaseName: string, packageFilePath: string, ownerUri: string, taskExecutionMode: azdata.TaskExecutionMode): Thenable<mssql.DacFxResult> {
this.dacfxResult.operationId = exportOperationId;
return Promise.resolve(this.dacfxResult);
}
importBacpac(packageFilePath: string, databaseName: string, ownerUri: string, taskExecutionMode: azdata.TaskExecutionMode): Thenable<mssql.DacFxResult> {
this.dacfxResult.operationId = importOperationId;
return Promise.resolve(this.dacfxResult);
}
extractDacpac(databaseName: string, packageFilePath: string, applicationName: string, applicationVersion: string, ownerUri: string, taskExecutionMode: azdata.TaskExecutionMode): Thenable<mssql.DacFxResult> {
this.dacfxResult.operationId = extractOperationId;
return Promise.resolve(this.dacfxResult);
}
importDatabaseProject(databaseName: string, targetFilePath: string, applicationName: string, applicationVersion: string, ownerUri: string, extractTarget: mssql.ExtractTarget, taskExecutionMode: azdata.TaskExecutionMode): Thenable<mssql.DacFxResult> {
this.dacfxResult.operationId = importOperationId;
return Promise.resolve(this.dacfxResult);
}
deployDacpac(packageFilePath: string, databaseName: string, upgradeExisting: boolean, ownerUri: string, taskExecutionMode: azdata.TaskExecutionMode, sqlCommandVariableValues?: Record<string, string>): Thenable<mssql.DacFxResult> {
this.dacfxResult.operationId = deployOperationId;
return Promise.resolve(this.dacfxResult);
}
generateDeployScript(packageFilePath: string, databaseName: string, ownerUri: string, taskExecutionMode: azdata.TaskExecutionMode, sqlCommandVariableValues?: Record<string, string>): Thenable<mssql.DacFxResult> {
this.dacfxResult.operationId = generateScript;
return Promise.resolve(this.dacfxResult);
}
generateDeployPlan(packageFilePath: string, databaseName: string, ownerUri: string, taskExecutionMode: azdata.TaskExecutionMode): Thenable<mssql.GenerateDeployPlanResult> {
this.dacfxResult.operationId = generateDeployPlan;
const deployPlan: mssql.GenerateDeployPlanResult = {
operationId: generateDeployPlan,
success: true,
errorMessage: '',
report: generateDeployPlan
};
return Promise.resolve(deployPlan);
}
}