Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Firefox/dom/html/test/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 3 kB image not shown  

Quelle  test_bug1261673.html   Sprache: HTML

 
 products/sources/formale Sprachen/C/Firefox/dom/html/test/test_bug1261673.html


<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=1261673
-->

<head>
  <meta charset="utf-8">
  <title>Test for Bug 1261673</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <script src="/tests/SimpleTest/EventUtils.js"></script>
  <script src="/tests/SimpleTest/paint_listener.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1261673">Mozilla Bug 1261673</a>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<input id="test_number" type="number" value=5>
<script type="text/javascript">

/** Test for Bug 1261673 **/
SimpleTest.waitForExplicitFinish();
SimpleTest.waitForFocus(runTests);

function runTests() {
  let input = window.document.getElementById("test_number");

  // focus: whether the target input element is focused
  // deltaY: deltaY of WheelEvent
  // deltaMode: deltaMode of WheelEvent
  // valueChanged: expected value changes after input element handled the wheel event
  let params = [
    {focus: true, deltaY: 1.0, deltaMode: WheelEvent.DOM_DELTA_LINE, valueChanged: -1},
    {focus: true, deltaY: -1.0, deltaMode: WheelEvent.DOM_DELTA_LINE, valueChanged: 1},
    {focus: true, deltaY: 1.0, deltaMode: WheelEvent.DOM_DELTA_PAGE, valueChanged: -1},
    {focus: true, deltaY: -1.0, deltaMode: WheelEvent.DOM_DELTA_PAGE, valueChanged: 1},
    {focus: true, deltaY: 1.0, deltaMode: WheelEvent.DOM_DELTA_PIXEL, valueChanged: 0},
    {focus: true, deltaY: -1.0, deltaMode: WheelEvent.DOM_DELTA_PIXEL, valueChanged: 0},
    {focus: false, deltaY: 1.0, deltaMode: WheelEvent.DOM_DELTA_LINE, valueChanged: 0},
    {focus: false, deltaY: -1.0, deltaMode: WheelEvent.DOM_DELTA_LINE, valueChanged: 0}
  ];

  let testIdx = 0;

  // The expected value of the number field; used in is() check below.
  // Initialized to the value that the field starts out with; subtests will
  // modify this if they expect to modify the value.
  let expectedValue = parseInt(input.value);

  // Actual/expected number of mutations to the number field's value:
  let actualChangeCount = 0;
  let expectedChangeCount = 0;

  const prefName = "dom.input.number_and_range_modified_by_mousewheel";
  let didFlipPref = false;
  let isPrefEnabled = SpecialPowers.getBoolPref(prefName);
  is(isPrefEnabled, false,  "Expecting pref to be disabled by default");
  input.addEventListener("change", () => {
    ++actualChangeCount;
  });

  function runNext() {
    let p = params[testIdx];
    (p.focus) ? input.focus() : input.blur();
    if (isPrefEnabled && p.valueChanged != 0) {
      expectedChangeCount++;
      expectedValue += p.valueChanged;
    }

    sendWheelAndPaint(input, 1, 1, { deltaY: p.deltaY, deltaMode: p.deltaMode },
                      async () => {
      is(parseInt(input.value), expectedValue,
         "Handle wheel in number input test-" + testIdx +
         " with pref " + (isPrefEnabled ? "en" : "dis") + "abled");

      is(actualChangeCount, expectedChangeCount,
         "UA should fire change event when input's value changed");
      if (++testIdx < params.length) {
        // More subtests remain; kick off the next one.
        runNext();
      } else if (!didFlipPref) {
        // Reached the end of the subtest list.  Flip the pref
        // and restart our iteration over the subtests.
        await SpecialPowers.pushPrefEnv({
          set: [[prefName, !isPrefEnabled]],
        });
        isPrefEnabled = !isPrefEnabled;
        didFlipPref = true;
        testIdx = actualChangeCount = expectedChangeCount = 0;
        runNext();
      } else {
        // Reached the end of the subtest list, for both pref settings.
        // We're done!
        SimpleTest.finish();
      }
    });
  }
  runNext();
}

</script>
</body>
</html>

Messung V0.5
C=94 H=99 G=96

¤ Dauer der Verarbeitung: 0.15 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.