blob: 48a867986bb39fb3485c6042e2be4cdd57545a22 [file] [log] [blame]
<html>
<head>
<script src="../../http/tests/inspector/inspector-test.js"></script>
<script src="editor-test.js"></script>
<script>
function test()
{
function findElement(collection, elem) {
// length
for(var i = 0; i < collection.length; ++i)
if (collection[i] === elem)
return i;
return null;
}
var steps = [step3, step2, step1]; // reversed order
function selectionChangeListener()
{
if (steps.length)
steps.pop().call();
}
var textEditorDelegate = new WebInspector.TextEditorDelegate();
textEditorDelegate.selectionChanged = selectionChangeListener;
var textEditor = InspectorTest.createTestEditor(undefined, undefined, textEditorDelegate);
textEditor.setReadOnly(false);
textEditor.setText(findElement.toString());
textEditor.element.focus();
InspectorTest.addResult("=========== TextEditor text ==========");
InspectorTest.addResult(textEditor.text());
InspectorTest.addResult("=========== Before selecting element ===========");
InspectorTest.dumpEditorHTML(textEditor, true);
var range = new WebInspector.TextRange(0, 21, 0, 31);
textEditor.setSelection(range);
function step1()
{
InspectorTest.addResult("=========== After selecting '" + textEditor._textModel.copyRange(range) + "' ===========");
InspectorTest.dumpEditorHTML(textEditor, true);
range = new WebInspector.TextRange(0, 33, 0, 37);
textEditor.setSelection(range);
}
function step2()
{
InspectorTest.addResult("=========== After selecting '" + textEditor._textModel.copyRange(range) + "' ===========");
InspectorTest.dumpEditorHTML(textEditor, true);
range = new WebInspector.TextRange(1, 11, 1, 17);
textEditor.setSelection(range);
}
function step3()
{
InspectorTest.addResult("=========== After selecting '" + textEditor._textModel.copyRange(range) + "' ===========");
InspectorTest.dumpEditorHTML(textEditor, true);
InspectorTest.completeTest();
}
}
</script>
</head>
<body onload="runTest();">
<p>
This test checks text editor token highlight functionality.
</p>
</body>
</html>