Files
react-native-devtools-frontend/front_end/sources_test_runner/AutocompleteTestRunner.js
T
Blink Reformat 4c46d0969f The Great Blink mv for source files, part 2.
Move and rename files.

NOAUTOREVERT=true
NOPRESUBMIT=true
NOTREECHECKS=true
Bug: 768828
TBR=darin@chromium.org
NOTRY=true

Change-Id: I66d3b155808bc5bdbf237b80208e1e552bcf7f28
Reviewed-on: https://chromium-review.googlesource.com/1001153
Reviewed-by: Blink Reformat <blink-reformat@chromium.org>
Commit-Queue: Blink Reformat <blink-reformat@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#549061}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0aee4434a4dba42a42abaea9bfbc0cd196a63bc1
2018-04-07 15:32:37 +00:00

44 lines
1.4 KiB
JavaScript

// Copyright 2017 The Chromium Authors. All
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
/**
* @fileoverview using private properties isn't a Closure violation in tests.
* @suppress {accessControls}
*/
SourcesTestRunner.dumpSuggestions = function(textEditor, lines) {
let resolve;
const promise = new Promise(fulfill => resolve = fulfill);
let lineNumber = -1;
let columnNumber;
for (let i = 0; i < lines.length; ++i) {
columnNumber = lines[i].indexOf('|');
if (columnNumber !== -1) {
lineNumber = i;
break;
}
}
if (lineNumber === -1)
throw new Error('Test case is invalid: cursor position is not marked with \'|\' symbol.');
textEditor.setText(lines.join('\n').replace('|', ''));
textEditor.setSelection(TextUtils.TextRange.createFromLocation(lineNumber, columnNumber));
TestRunner.addSniffer(
TextEditor.TextEditorAutocompleteController.prototype, '_onSuggestionsShownForTest', suggestionsShown);
textEditor._autocompleteController.autocomplete();
function suggestionsShown(words) {
TestRunner.addResult('========= Selection In Editor =========');
SourcesTestRunner.dumpTextWithSelection(textEditor);
TestRunner.addResult('======= Autocomplete Suggestions =======');
TestRunner.addResult('[' + words.map(item => item.text).join(', ') + ']');
resolve();
}
return promise;
};