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


TypeScript codeActionModel.CodeActionOracle類代碼示例

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


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

示例1: CodeActionOracle

			let oracle = new CodeActionOracle(editor, markerService, e => {
				assert.equal(e.trigger.type, 'auto');
				assert.deepEqual(e.range, { startLineNumber: 3, startColumn: 1, endLineNumber: 3, endColumn: 4 });
				assert.deepEqual(e.position, { lineNumber: 3, column: 1 });

				oracle.dispose();
				resolve(null);
			}, 5);
開發者ID:jumpinjackie,項目名稱:sqlopsstudio,代碼行數:8,代碼來源:codeActionModel.test.ts

示例2: Promise

		return new Promise((resolve, reject) => {

			const oracle = new CodeActionOracle(editor, markerService, e => {
				assert.equal(e.trigger.type, 'auto');
				assert.ok(e.actions);
				e.actions.then(fixes => {
					oracle.dispose();
					assert.equal(fixes.length, 1);
					resolve(undefined);
				}, reject);
			});
			// start here
			editor.setPosition({ lineNumber: 1, column: 1 });
		});
開發者ID:jumpinjackie,項目名稱:sqlopsstudio,代碼行數:14,代碼來源:codeActionModel.test.ts

示例3: test

	test('Oracle -> marker wins over selection', () => {

		let range: Range;
		let reg = CodeActionProviderRegistry.register(languageIdentifier.language, {
			provideCodeActions(doc, _range) {
				range = _range;
				return [];
			}
		});

		markerService.changeOne('fake', uri, [{
			startLineNumber: 1, startColumn: 1, endLineNumber: 1, endColumn: 6,
			message: 'error',
			severity: 1,
			code: '',
			source: ''
		}]);

		let fixes: TPromise<any>[] = [];
		let oracle = new CodeActionOracle(editor, markerService, e => {
			fixes.push(e.actions);
		}, 10);

		editor.setSelection({ startLineNumber: 1, startColumn: 1, endLineNumber: 1, endColumn: 13 });

		return TPromise.join<any>([TPromise.timeout(20)].concat(fixes)).then(_ => {

			// -> marker wins
			assert.deepEqual(range, { startLineNumber: 1, startColumn: 1, endLineNumber: 1, endColumn: 6 });

			// 'auto' triggered, non-empty selection BUT within a marker
			editor.setSelection({ startLineNumber: 1, startColumn: 2, endLineNumber: 1, endColumn: 4 });

			return TPromise.join([TPromise.timeout(20)].concat(fixes)).then(_ => {
				reg.dispose();
				oracle.dispose();

				// assert marker
				assert.deepEqual(range, { startLineNumber: 1, startColumn: 1, endLineNumber: 1, endColumn: 6 });
			});
		});
	});
開發者ID:jumpinjackie,項目名稱:sqlopsstudio,代碼行數:42,代碼來源:codeActionModel.test.ts

示例4:

			return TPromise.join([TPromise.timeout(20)].concat(fixes)).then(_ => {
				reg.dispose();
				oracle.dispose();

				// assert marker
				assert.deepEqual(range, { startLineNumber: 1, startColumn: 1, endLineNumber: 1, endColumn: 6 });
			});
開發者ID:jumpinjackie,項目名稱:sqlopsstudio,代碼行數:7,代碼來源:codeActionModel.test.ts


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