當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript quickFix.getCodeActions函數代碼示例

本文整理匯總了TypeScript中vs/editor/contrib/quickFix/quickFix.getCodeActions函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript getCodeActions函數的具體用法?TypeScript getCodeActions怎麽用?TypeScript getCodeActions使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了getCodeActions函數的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: test

	test('getCodeActions should filter by scope', async function () {
		const provider = new class implements CodeActionProvider {
			provideCodeActions(): CodeAction[] {
				return [
					{ title: 'a', kind: 'a' },
					{ title: 'b', kind: 'b' },
					{ title: 'a.b', kind: 'a.b' }
				];
			}
		};

		disposables.push(CodeActionProviderRegistry.register('fooLang', provider));

		{
			const actions = await getCodeActions(model, new Range(1, 1, 2, 1), new CodeActionKind('a'));
			assert.equal(actions.length, 2);
			assert.strictEqual(actions[0].title, 'a');
			assert.strictEqual(actions[1].title, 'a.b');
		}

		{
			const actions = await getCodeActions(model, new Range(1, 1, 2, 1), new CodeActionKind('a.b'));
			assert.equal(actions.length, 1);
			assert.strictEqual(actions[0].title, 'a.b');
		}

		{
			const actions = await getCodeActions(model, new Range(1, 1, 2, 1), new CodeActionKind('a.b.c'));
			assert.equal(actions.length, 0);
		}
	});
開發者ID:JarnoNijboer,項目名稱:vscode,代碼行數:31,代碼來源:quickFix.test.ts

示例2: test

	test('CodeActions are sorted by type, #38623', async function () {

		const provider = new class implements CodeActionProvider {
			provideCodeActions() {
				return [
					testData.command.abc,
					testData.diagnostics.bcd,
					testData.spelling.bcd,
					testData.tsLint.bcd,
					testData.tsLint.abc,
					testData.diagnostics.abc
				];
			}
		};

		disposables.push(CodeActionProviderRegistry.register('fooLang', provider));

		const expected = [
			// CodeActions with a diagnostics array are shown first ordered by diagnostics.message
			testData.diagnostics.abc,
			testData.diagnostics.bcd,

			// CodeActions without diagnostics are shown in the given order without any further sorting
			testData.command.abc,
			testData.spelling.bcd, // empty diagnostics array
			testData.tsLint.bcd,
			testData.tsLint.abc
		];

		const actions = await getCodeActions(model, new Range(1, 1, 2, 1));
		assert.equal(actions.length, 6);
		assert.deepEqual(actions, expected);
	});
開發者ID:servicesgpr,項目名稱:vscode,代碼行數:33,代碼來源:quickFix.test.ts

示例3: test

	test('basics', async function () {

		const provider = new class implements CodeActionProvider {
			provideCodeActions() {
				return [{
					title: 'Testing1',
					diagnostics: [{
						startLineNumber: 1,
						startColumn: 1,
						endLineNumber: 2,
						endColumn: 1,
						severity: Severity.Error,
						message: 'some error'
					}]
				}, {
					title: 'Testing2'
				}];
			}
		};

		disposables.push(CodeActionProviderRegistry.register('fooLang', provider));

		const actions = await getCodeActions(model, new Range(1, 1, 2, 1));
		assert.equal(actions.length, 2);
	});
開發者ID:AlexxNica,項目名稱:sqlopsstudio,代碼行數:25,代碼來源:quickFix.test.ts

示例4: test

	test('getCodeActions should not return source code action by default', async function () {
		const provider = new class implements CodeActionProvider {
			provideCodeActions(): CodeAction[] {
				return [
					{ title: 'a', kind: CodeActionKind.Source.value },
					{ title: 'b', kind: 'b' }
				];
			}
		};

		disposables.push(CodeActionProviderRegistry.register('fooLang', provider));

		{
			const actions = await getCodeActions(model, new Range(1, 1, 2, 1), {});
			assert.equal(actions.length, 1);
			assert.strictEqual(actions[0].title, 'b');
		}

		{
			const actions = await getCodeActions(model, new Range(1, 1, 2, 1), { kind: CodeActionKind.Source, includeSourceActions: true });
			assert.equal(actions.length, 1);
			assert.strictEqual(actions[0].title, 'a');
		}
	});
開發者ID:costincaraivan,項目名稱:vscode,代碼行數:24,代碼來源:quickFix.test.ts


注:本文中的vs/editor/contrib/quickFix/quickFix.getCodeActions函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。