mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-01-27 01:25:36 -05:00
Add check OE node tests (#4273)
* Added verify OE child nodes tests for sandalone and BDC instance * msg changes * Added standalone OE node test * Resolved PR comments * Change env name * Added scripts to set env for integration test
This commit is contained in:
@@ -8,17 +8,36 @@
|
||||
import 'mocha';
|
||||
import * as azdata from 'azdata';
|
||||
import { context } from './testContext';
|
||||
import { getDefaultTestingServer } from './testConfig';
|
||||
import { getDefaultTestingServer, getBdcServer, TestServerProfile } from './testConfig';
|
||||
import { connectToServer } from './utils';
|
||||
import assert = require('assert');
|
||||
|
||||
if (context.RunTest) {
|
||||
suite('Object Explorer integration test suite', () => {
|
||||
suite('Object Explorer integration suite', () => {
|
||||
test('BDC instance node label test', async function () {
|
||||
assert(process.env.BDC_BACKEND_HOSTNAME !== undefined &&
|
||||
process.env.BDC_BACKEND_USERNAME !== undefined &&
|
||||
process.env.BDC_BACKEND_PWD !== undefined, 'BDC_BACKEND_HOSTNAME, BDC_BACKEND_USERNAME, BDC_BACKEND_PWD must be set using ./scripts/setbackenvariables.sh or .\\scripts\\setbackendvaraibles.bat');
|
||||
const expectedNodeLabel = ['Databases', 'Security', 'Server Objects', 'Data Services'];
|
||||
let server = await getBdcServer();
|
||||
await VerifyOeNode(server, 6000, expectedNodeLabel);
|
||||
});
|
||||
test('Standard alone instance node label test', async function () {
|
||||
const expectedNodeLabel = ['Databases', 'Security', 'Server Objects'];
|
||||
let server = await getDefaultTestingServer();
|
||||
await VerifyOeNode(server, 3000, expectedNodeLabel);
|
||||
});
|
||||
test('context menu test', async function () {
|
||||
await connectToServer(await getDefaultTestingServer());
|
||||
let server = await getDefaultTestingServer();
|
||||
await connectToServer(server, 3000);
|
||||
let nodes = <azdata.objectexplorer.ObjectExplorerNode[]>await azdata.objectexplorer.getActiveConnectionNodes();
|
||||
assert(nodes.length === 1, `expecting 1 active connection, actual: ${nodes.length}`);
|
||||
let actions = await azdata.objectexplorer.getNodeActions(nodes[0].connectionId, nodes[0].nodePath);
|
||||
assert(nodes.length > 0, `Expecting at least one active connection, actual: ${nodes.length}`);
|
||||
|
||||
let index = nodes.findIndex(node => node.nodePath.includes(server.serverName));
|
||||
assert(index !== -1, `Failed to find server: "${server.serverName}" in OE tree`);
|
||||
|
||||
let node = nodes[index];
|
||||
let actions = await azdata.objectexplorer.getNodeActions(node.connectionId, node.nodePath);
|
||||
const expectedActions = ['Manage', 'New Query', 'Disconnect', 'Delete Connection', 'Refresh', 'New Notebook', 'Launch Profiler'];
|
||||
|
||||
const expectedString = expectedActions.join(',');
|
||||
@@ -27,3 +46,18 @@ if (context.RunTest) {
|
||||
});
|
||||
});
|
||||
}
|
||||
async function VerifyOeNode(server: TestServerProfile, timeout: number,expectedNodeLable: string[]) {
|
||||
await connectToServer(server, timeout);
|
||||
let nodes = <azdata.objectexplorer.ObjectExplorerNode[]>await azdata.objectexplorer.getActiveConnectionNodes();
|
||||
assert(nodes.length > 0, `Expecting at least one active connection, actual: ${nodes.length}`);
|
||||
|
||||
let index = nodes.findIndex(node => node.nodePath.includes(server.serverName));
|
||||
assert(index !== -1, `Failed to find server: "${server.serverName}" in OE tree`);
|
||||
let actualNodeLable = [];
|
||||
let childeren = await nodes[index].getChildren();
|
||||
assert(childeren.length === expectedNodeLable.length, `Expecting node count: ${expectedNodeLable.length}, Actual: ${childeren.length}`);
|
||||
|
||||
childeren.forEach(c => actualNodeLable.push(c.label));
|
||||
assert(expectedNodeLable.toLocaleString() === actualNodeLable.toLocaleString(), `Expected node label: "$'${expectedNodeLable}", Actual: "${actualNodeLable}"`);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user