本文整理汇总了TypeScript中vs/editor/test/common/mocks/mockConfiguration.MockConfiguration类的典型用法代码示例。如果您正苦于以下问题:TypeScript MockConfiguration类的具体用法?TypeScript MockConfiguration怎么用?TypeScript MockConfiguration使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了MockConfiguration类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: 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 MockConfiguration(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();
}
示例2: testCommand
export function testCommand(
lines: string[],
mode: IMode,
selection: Selection,
commandFactory: (selection:Selection) => editorCommon.ICommand,
expectedLines: string[],
expectedSelection: Selection
): void {
let model = new Model(lines.join('\n'), Model.DEFAULT_CREATION_OPTIONS, mode);
let config = new MockConfiguration(null);
let cursor = new Cursor(0, config, model, null, 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: withSplitLinesCollection
function withSplitLinesCollection(text: string, callback: (model: Model, linesCollection: SplitLinesCollection) => void): void {
let config = new MockConfiguration({});
let hardWrappingLineMapperFactory = new CharacterHardWrappingLineMapperFactory(
config.editor.wrappingInfo.wordWrapBreakBeforeCharacters,
config.editor.wrappingInfo.wordWrapBreakAfterCharacters,
config.editor.wrappingInfo.wordWrapBreakObtrusiveCharacters
);
let model = Model.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();
}
示例4: usingCursor
function usingCursor(opts:ICursorOpts, callback:(model:Model, cursor:Cursor)=>void): void {
let model = new Model(opts.text.join('\n'), opts.mode);
let config = new MockConfiguration(opts.config);
let cursor = new Cursor(1, config, model, null, false);
callback(model, cursor);
cursor.dispose();
config.dispose();
model.dispose();
}
示例5: testCommand
function testCommand(lines: string[], selections: Selection[], edits: IIdentifiedSingleEditOperation[], expectedLines: string[], expectedSelections: Selection[]): void {
let model = Model.createFromString(lines.join('\n'));
let config = new MockConfiguration(null);
let cursor = new Cursor(config, model, viewModelHelper(model), false);
cursor.setSelections('tests', selections);
model.applyEdits(edits);
let actualValue = model.toRawText().lines;
assert.deepEqual(actualValue, expectedLines);
let actualSelections = cursor.getSelections();
assert.deepEqual(actualSelections.map(s => s.toString()), expectedSelections.map(s => s.toString()));
cursor.dispose();
config.dispose();
model.dispose();
}
示例6: testCommand
function testCommand(lines:string[], selection:Selection, edits:IIdentifiedSingleEditOperation[], expectedLines:string[], expectedSelection:Selection): void {
let model = new Model(lines.join('\n'), Model.DEFAULT_CREATION_OPTIONS, null);
let config = new MockConfiguration(null);
let cursor = new Cursor(0, config, model, null, false);
cursor.setSelections('tests', [selection]);
model.applyEdits(edits);
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();
}
示例7: withTestViewModel
function withTestViewModel(opts: ITestViewModelOpts, callback: (viewModel: ViewModel, model: Model) => void): void {
const EDITOR_ID = 1;
let configuration = new MockConfiguration({
wrappingColumn: opts.wrappingColumn
});
let model = Model.createFromString(opts.text);
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,
() => {
return new Range(1, 1, 1, 1);
}
);
callback(viewModel, model);
viewModel.dispose();
model.dispose();
configuration.dispose();
}
示例8: test
test('issue #3662', () => {
let config = new MockConfiguration({});
let hardWrappingLineMapperFactory = new CharacterHardWrappingLineMapperFactory(
config.editor.wrappingInfo.wordWrapBreakBeforeCharacters,
config.editor.wrappingInfo.wordWrapBreakAfterCharacters,
config.editor.wrappingInfo.wordWrapBreakObtrusiveCharacters
);
let model = Model.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
);
linesCollection.setHiddenAreas([{
startLineNumber: 1,
startColumn: 1,
endLineNumber: 3,
endColumn: 1
}, {
startLineNumber: 5,
startColumn: 1,
endLineNumber: 6,
endColumn: 1
}], (eventType, payload) => {/*no-op*/});
let viewLineCount = linesCollection.getOutputLineCount();
assert.equal(viewLineCount, 1, 'getOutputLineCount()');
let modelLineCount = model.getLineCount();
for (let lineNumber = 0; lineNumber <= modelLineCount + 1; lineNumber++) {
let lineMinColumn = (lineNumber >= 1 && lineNumber <= modelLineCount) ? model.getLineMinColumn(lineNumber) : 1;
let lineMaxColumn = (lineNumber >= 1 && lineNumber <= modelLineCount) ? model.getLineMaxColumn(lineNumber) : 1;
for (let column = lineMinColumn - 1; column <= lineMaxColumn + 1; column++) {
let viewPosition = linesCollection.convertInputPositionToOutputPosition(lineNumber, column);
// validate view position
let viewLineNumber = viewPosition.lineNumber;
let viewColumn = viewPosition.column;
if (viewLineNumber < 1) {
viewLineNumber = 1;
}
var lineCount = linesCollection.getOutputLineCount();
if (viewLineNumber > lineCount) {
viewLineNumber = lineCount;
}
var viewMinColumn = linesCollection.getOutputLineMinColumn(viewLineNumber);
var viewMaxColumn = linesCollection.getOutputLineMaxColumn(viewLineNumber);
if (viewColumn < viewMinColumn) {
viewColumn = viewMinColumn;
}
if (viewColumn > viewMaxColumn) {
viewColumn = viewMaxColumn;
}
let validViewPosition = new Position(viewLineNumber, viewColumn);
assert.equal(viewPosition.toString(), validViewPosition.toString(), 'model->view for ' + lineNumber + ', ' + column);
}
}
for (let lineNumber = 0; lineNumber <= viewLineCount + 1; lineNumber++) {
let lineMinColumn = linesCollection.getOutputLineMinColumn(lineNumber);
let lineMaxColumn = linesCollection.getOutputLineMaxColumn(lineNumber);
for (let column = lineMinColumn - 1; column <= lineMaxColumn + 1; column++) {
let modelPosition = linesCollection.convertOutputPositionToInputPosition(lineNumber, column);
let validModelPosition = model.validatePosition(modelPosition);
assert.equal(modelPosition.toString(), validModelPosition.toString(), 'view->model for ' + lineNumber + ', ' + column);
}
}
linesCollection.dispose();
model.dispose();
config.dispose();
});
示例9: 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: MockConfiguration;
let thisCursor: Cursor;
setup(() => {
let text =
LINE1 + '\r\n' +
LINE2 + '\n' +
LINE3 + '\n' +
LINE4 + '\r\n' +
LINE5;
thisModel = Model.createFromString(text);
thisConfiguration = new MockConfiguration(null);
});
teardown(() => {
thisCursor.dispose();
thisModel.dispose();
thisConfiguration.dispose();
});
test('move to first character of line from middle', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, 8);
moveToLineStart(thisCursor);
cursorEqual(thisCursor, 1, 1);
});
test('move to first character of line from first non white space character', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, 6);
moveToLineStart(thisCursor);
cursorEqual(thisCursor, 1, 1);
});
test('move to first character of line from first character', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, 1);
moveToLineStart(thisCursor);
cursorEqual(thisCursor, 1, 1);
});
test('move to first non white space character of line from middle', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, 8);
moveToLineFirstNonWhiteSpaceCharacter(thisCursor);
cursorEqual(thisCursor, 1, 6);
});
test('move to first non white space character of line from first non white space character', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, 6);
moveToLineFirstNonWhiteSpaceCharacter(thisCursor);
cursorEqual(thisCursor, 1, 6);
});
test('move to first non white space character of line from first character', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, 1);
moveToLineFirstNonWhiteSpaceCharacter(thisCursor);
cursorEqual(thisCursor, 1, 6);
});
test('move to end of line from middle', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, 8);
moveToLineEnd(thisCursor);
cursorEqual(thisCursor, 1, LINE1.length + 1);
});
test('move to end of line from last non white space character', () => {
thisCursor= aCursor();
moveTo(thisCursor, 1, LINE1.length - 1);
moveToLineEnd(thisCursor);
cursorEqual(thisCursor, 1, LINE1.length + 1);
});
test('move to end of line from line end', () => {
//.........这里部分代码省略.........
示例10:
teardown(() => {
thisCursor.dispose();
thisModel.dispose();
thisConfiguration.dispose();
});