tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

browser_jsterm_helper_dollar.js (1803B)


      1 /* Any copyright is dedicated to the Public Domain.
      2 * http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 "use strict";
      5 
      6 const TEST_URI = `data:text/html,<!DOCTYPE html>
      7 <main>
      8  <ul>
      9    <li>First</li>
     10    <li>Second</li>
     11  </ul>
     12  <ul id="myList">
     13    <li id="myListItem1" class="inMyList">First</li>
     14    <li id="myListItem2" class="inMyList">Second</li>
     15  </ul>
     16  <aside>Sidebar</aside>
     17 </main>
     18 `;
     19 
     20 add_task(async function () {
     21  const hud = await openNewTabAndConsole(TEST_URI);
     22 
     23  let message = await executeAndWaitForResultMessage(
     24    hud,
     25    "$('main')",
     26    "<main>"
     27  );
     28  ok(message, "`$('main')` worked");
     29 
     30  message = await executeAndWaitForResultMessage(
     31    hud,
     32    "$('main > ul > li')",
     33    "<li>"
     34  );
     35  ok(message, "`$('main > ul > li')` worked");
     36 
     37  message = await executeAndWaitForResultMessage(
     38    hud,
     39    "$('main > ul > li').tagName",
     40    "LI"
     41  );
     42  ok(message, "`$` result can be used right away");
     43 
     44  message = await executeAndWaitForResultMessage(hud, "$('div')", "null");
     45  ok(message, "`$('div')` does return null");
     46 
     47  message = await executeAndWaitForErrorMessage(
     48    hud,
     49    "$(':foo')",
     50    "':foo' is not a valid selector"
     51  );
     52  ok(message, "`$(':foo')` returns an error message");
     53 
     54  message = await executeAndWaitForResultMessage(
     55    hud,
     56    "$('li', document.querySelector('ul#myList'))",
     57    '<li id="myListItem1" class="inMyList">'
     58  );
     59  ok(message, "`$('li', document.querySelector('ul#myList'))` worked");
     60 
     61  message = await executeAndWaitForErrorMessage(
     62    hud,
     63    "$('li', $(':foo'))",
     64    "':foo' is not a valid selector"
     65  );
     66  ok(message, "`$('li', $(':foo'))` returns an error message");
     67 
     68  message = await executeAndWaitForResultMessage(
     69    hud,
     70    "$('li', $('div'))",
     71    "<li>"
     72  );
     73  ok(message, "`$('li', $('div'))` worked");
     74 });