Path: blob/main/src/vs/sessions/contrib/chat/test/browser/runScriptAction.test.ts
13405 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import assert from 'assert';6import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js';7import { isISubmenuItem, MenuId, MenuRegistry } from '../../../../../platform/actions/common/actions.js';89// Side-effect import to trigger module-level menu registrations.10// Only import runScriptAction which registers the Run dropdown submenu;11// avoid chat.contribution.js and sessionsTerminalContribution.js which12// bootstrap heavy workbench contributions and leak disposables from13// KeybindingsRegistry in this lightweight test context.14import '../../browser/runScriptAction.js';1516const titleBarSessionMenu = MenuId.for('SessionsTitleBarSessionMenu');1718suite('RunScriptContribution', () => {1920ensureNoDisposablesAreLeakedInTestSuite();2122test('contributes run dropdown to TitleBarSessionMenu', () => {23const items = MenuRegistry.getMenuItems(titleBarSessionMenu);2425const runAction = items.find(item => isISubmenuItem(item) && item.submenu.id === 'AgentSessionsRunScriptDropdown');2627assert.ok(runAction, 'run dropdown should be contributed to TitleBarSessionMenu');28assert.strictEqual(runAction.order, 8);29});30});313233