本文整理匯總了TypeScript中vs/editor/test/common/mocks/testConfiguration.TestConfiguration類的典型用法代碼示例。如果您正苦於以下問題:TypeScript TestConfiguration類的具體用法?TypeScript TestConfiguration怎麽用?TypeScript TestConfiguration使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了TestConfiguration類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: withSplitLinesCollection
function withSplitLinesCollection(text: string, callback: (model: TextModel, linesCollection: SplitLinesCollection) => void): void {
let config = new TestConfiguration({});
let hardWrappingLineMapperFactory = new CharacterHardWrappingLineMapperFactory(
config.editor.wrappingInfo.wordWrapBreakBeforeCharacters,
config.editor.wrappingInfo.wordWrapBreakAfterCharacters,
config.editor.wrappingInfo.wordWrapBreakObtrusiveCharacters
);
let model = TextModel.createFromString([
'int main() {',
'\tprintf("Hello world!");',
'}',
'int main() {',
'\tprintf("Hello world!");',
'}',
].join('\n'));
let linesCollection = new SplitLinesCollection(
model,
hardWrappingLineMapperFactory,
model.getOptions().tabSize,
config.editor.wrappingInfo.wrappingColumn,
config.editor.fontInfo.typicalFullwidthCharacterWidth / config.editor.fontInfo.typicalHalfwidthCharacterWidth,
config.editor.wrappingInfo.wrappingIndent
);
callback(model, linesCollection);
linesCollection.dispose();
model.dispose();
config.dispose();
}
示例2: testCommand
export function testCommand(
lines: string[],
languageIdentifier: LanguageIdentifier,
selection: Selection,
commandFactory: (selection: Selection) => editorCommon.ICommand,
expectedLines: string[],
expectedSelection: Selection
): void {
let model = Model.createFromString(lines.join('\n'), undefined, languageIdentifier);
let config = new TestConfiguration(null);
let cursor = new Cursor(config, model, viewModelHelper(model), false);
cursor.setSelections('tests', [selection]);
cursor.trigger('tests', editorCommon.Handler.ExecuteCommand, commandFactory(cursor.getSelection()));
let actualValue = model.toRawText().lines;
assert.deepEqual(actualValue, expectedLines);
let actualSelection = cursor.getSelection();
assert.deepEqual(actualSelection.toString(), expectedSelection.toString());
cursor.dispose();
config.dispose();
model.dispose();
}
示例3: testViewModel
export function testViewModel(text: string[], options: MockCodeEditorCreationOptions, callback: (viewModel: ViewModel, model: Model) => void): void {
const EDITOR_ID = 1;
let configuration = new TestConfiguration(options);
let model = Model.createFromString(text.join('\n'));
let factory = new CharacterHardWrappingLineMapperFactory(
configuration.editor.wrappingInfo.wordWrapBreakBeforeCharacters,
configuration.editor.wrappingInfo.wordWrapBreakAfterCharacters,
configuration.editor.wrappingInfo.wordWrapBreakObtrusiveCharacters
);
let linesCollection = new SplitLinesCollection(
model,
factory,
model.getOptions().tabSize,
configuration.editor.wrappingInfo.wrappingColumn,
configuration.editor.fontInfo.typicalFullwidthCharacterWidth / configuration.editor.fontInfo.typicalHalfwidthCharacterWidth,
configuration.editor.wrappingInfo.wrappingIndent
);
let viewModel = new ViewModel(
linesCollection,
EDITOR_ID,
configuration,
model
);
callback(viewModel, model);
viewModel.dispose();
model.dispose();
configuration.dispose();
}
示例4: testViewModel
export function testViewModel(text: string[], options: IEditorOptions, callback: (viewModel: ViewModel, model: Model) => void): void {
const EDITOR_ID = 1;
let configuration = new TestConfiguration(options);
let model = Model.createFromString(text.join('\n'));
let viewModel = new ViewModel(EDITOR_ID, configuration, model, null);
callback(viewModel, model);
viewModel.dispose();
model.dispose();
configuration.dispose();
}
示例5: _runTest
function _runTest(selection: Selection, editRange: Range, editText: string, editForceMoveMarkers: boolean, expected: Selection, msg: string): void {
const model = Model.createFromString(LINES.join('\n'));
const config = new TestConfiguration(null);
const viewModel = new ViewModel(0, config, model, null);
const cursor = new Cursor(config, model, viewModel);
cursor.setSelections('tests', [selection]);
model.applyEdits([{ range: editRange, text: editText, forceMoveMarkers: editForceMoveMarkers, identifier: null }]);
const actual = cursor.getSelection();
assert.deepEqual(actual.toString(), expected.toString(), msg);
cursor.dispose();
viewModel.dispose();
config.dispose();
model.dispose();
}
示例6: testCommand
function testCommand(lines: string[], selections: Selection[], edits: IIdentifiedSingleEditOperation[], expectedLines: string[], expectedSelections: Selection[]): void {
let model = Model.createFromString(lines.join('\n'));
let config = new TestConfiguration(null);
let cursor = new Cursor(config, model, viewModelHelper(model), false);
cursor.setSelections('tests', selections);
model.applyEdits(edits);
assert.deepEqual(model.getLinesContent(), expectedLines);
let actualSelections = cursor.getSelections();
assert.deepEqual(actualSelections.map(s => s.toString()), expectedSelections.map(s => s.toString()));
cursor.dispose();
config.dispose();
model.dispose();
}
示例7: suite
suite('Cursor move command test', () => {
let thisModel: TextModel;
let thisConfiguration: TestConfiguration;
let thisViewModel: ViewModel;
let thisCursor: Cursor;
setup(() => {
let text = [
' \tMy First Line\t ',
'\tMy Second Line',
' Third Lineđś',
'',
'1'
].join('\n');
thisModel = TextModel.createFromString(text);
thisConfiguration = new TestConfiguration({});
thisViewModel = new ViewModel(0, thisConfiguration, thisModel, null!);
thisCursor = new Cursor(thisConfiguration, thisModel, thisViewModel);
});
teardown(() => {
thisCursor.dispose();
thisViewModel.dispose();
thisModel.dispose();
thisConfiguration.dispose();
});
test('move left should move to left character', () => {
moveTo(thisCursor, 1, 8);
moveLeft(thisCursor);
cursorEqual(thisCursor, 1, 7);
});
test('move left should move to left by n characters', () => {
moveTo(thisCursor, 1, 8);
moveLeft(thisCursor, 3);
cursorEqual(thisCursor, 1, 5);
});
test('move left should move to left by half line', () => {
moveTo(thisCursor, 1, 8);
moveLeft(thisCursor, 1, CursorMove.RawUnit.HalfLine);
cursorEqual(thisCursor, 1, 1);
});
test('move left moves to previous line', () => {
moveTo(thisCursor, 2, 3);
moveLeft(thisCursor, 10);
cursorEqual(thisCursor, 1, 21);
});
test('move right should move to right character', () => {
moveTo(thisCursor, 1, 5);
moveRight(thisCursor);
cursorEqual(thisCursor, 1, 6);
});
test('move right should move to right by n characters', () => {
moveTo(thisCursor, 1, 2);
moveRight(thisCursor, 6);
cursorEqual(thisCursor, 1, 8);
});
test('move right should move to right by half line', () => {
moveTo(thisCursor, 1, 4);
moveRight(thisCursor, 1, CursorMove.RawUnit.HalfLine);
cursorEqual(thisCursor, 1, 14);
});
test('move right moves to next line', () => {
moveTo(thisCursor, 1, 8);
moveRight(thisCursor, 100);
cursorEqual(thisCursor, 2, 1);
});
test('move to first character of line from middle', () => {
moveTo(thisCursor, 1, 8);
moveToLineStart(thisCursor);
cursorEqual(thisCursor, 1, 1);
});
test('move to first character of line from first non white space character', () => {
//.........這裏部分代碼省略.........
示例8: suite
suite('Cursor move command test', () => {
const LINE1 = ' \tMy First Line\t ';
const LINE2 = '\tMy Second Line';
const LINE3 = ' Third Lineđś';
const LINE4 = '';
const LINE5 = '1';
let thisModel: Model;
let thisConfiguration: TestConfiguration;
let thisCursor: Cursor;
setup(() => {
let text =
LINE1 + '\r\n' +
LINE2 + '\n' +
LINE3 + '\n' +
LINE4 + '\r\n' +
LINE5;
thisModel = Model.createFromString(text);
thisConfiguration = new TestConfiguration(null);
});
teardown(() => {
thisCursor.dispose();
thisModel.dispose();
thisConfiguration.dispose();
});
test('move left should move to left character', () => {
thisCursor = aCursor();
moveTo(thisCursor, 1, 8);
moveLeft(thisCursor);
cursorEqual(thisCursor, 1, 7);
});
test('move left should move to left by n characters', () => {
thisCursor = aCursor();
moveTo(thisCursor, 1, 8);
moveLeft(thisCursor, 3);
cursorEqual(thisCursor, 1, 5);
});
test('move left should move to left by half line', () => {
thisCursor = aCursor();
moveTo(thisCursor, 1, 8);
moveLeft(thisCursor, 1, CursorMoveByUnit.HalfLine);
cursorEqual(thisCursor, 1, 1);
});
test('move left moves to previous line', () => {
thisCursor = aCursor();
moveTo(thisCursor, 2, 3);
moveLeft(thisCursor, 10);
cursorEqual(thisCursor, 1, LINE1.length + 1);
});
test('move right should move to right character', () => {
thisCursor = aCursor();
moveTo(thisCursor, 1, 5);
moveRight(thisCursor);
cursorEqual(thisCursor, 1, 6);
});
test('move right should move to right by n characters', () => {
thisCursor = aCursor();
moveTo(thisCursor, 1, 2);
moveRight(thisCursor, 6);
cursorEqual(thisCursor, 1, 8);
});
test('move right should move to right by half line', () => {
thisCursor = aCursor();
moveTo(thisCursor, 1, 4);
moveRight(thisCursor, 1, CursorMoveByUnit.HalfLine);
cursorEqual(thisCursor, 1, 14);
});
test('move right moves to next line', () => {
thisCursor = aCursor();
moveTo(thisCursor, 1, 8);
moveRight(thisCursor, 100);
cursorEqual(thisCursor, 2, 1);
});
//.........這裏部分代碼省略.........
示例9:
teardown(() => {
thisCursor.dispose();
thisViewModel.dispose();
thisModel.dispose();
thisConfiguration.dispose();
});