Blame devtools/client/sourceeditor/test/browser_editor_addons.js

Packit f0b94e
/* Any copyright is dedicated to the Public Domain.
Packit f0b94e
   http://creativecommons.org/publicdomain/zero/1.0/ */
Packit f0b94e
Packit f0b94e
"use strict";
Packit f0b94e
Packit f0b94e
function test() {
Packit f0b94e
  waitForExplicitFinish();
Packit f0b94e
Packit f0b94e
  setup((ed, win) => {
Packit f0b94e
    let doc = win.document.querySelector("iframe").contentWindow.document;
Packit f0b94e
Packit f0b94e
    // trailingspace.js
Packit f0b94e
    ed.setText("Hello   ");
Packit f0b94e
    ed.setOption("showTrailingSpace", false);
Packit f0b94e
    ok(!doc.querySelector(".cm-trailingspace"));
Packit f0b94e
    ed.setOption("showTrailingSpace", true);
Packit f0b94e
    ok(doc.querySelector(".cm-trailingspace"));
Packit f0b94e
Packit f0b94e
    // foldcode.js and foldgutter.js
Packit f0b94e
    ed.setMode(Editor.modes.js);
Packit f0b94e
    ed.setText("function main() {\nreturn 'Hello, World!';\n}");
Packit f0b94e
    executeSoon(() => testFold(doc, ed, win));
Packit f0b94e
  });
Packit f0b94e
}
Packit f0b94e
Packit f0b94e
function testFold(doc, ed, win) {
Packit f0b94e
  // Wait until folding arrow is there.
Packit f0b94e
  if (!doc.querySelector(".CodeMirror-foldgutter-open")) {
Packit f0b94e
    executeSoon(() => testFold(doc, ed, win));
Packit f0b94e
    return;
Packit f0b94e
  }
Packit f0b94e
Packit f0b94e
  teardown(ed, win);
Packit f0b94e
}