Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/devtools/client/netmonitor/src/har/test/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 2 kB image not shown  

Quelle  head.js   Sprache: JAVA

 
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */


"use strict";

/* eslint no-unused-vars: [2, {"vars": "local", "args": "none"}] */
/* import-globals-from ../../../test/head.js */

// Load the NetMonitor head.js file to share its API.
var netMonitorHead =
  "chrome://mochitests/content/browser/devtools/client/netmonitor/test/head.js";
Services.scriptloader.loadSubScript(netMonitorHead, this);

// Directory with HAR related test files.
const HAR_EXAMPLE_URL =
  "https://example.com/browser/devtools/client/netmonitor/src/har/test/";

/**
 * Trigger a "copy all as har" from the context menu of the requests list.

 * @param {Object} monitor
 *        The network monitor object
 */

async function copyAllAsHARWithContextMenu(monitor, { asString = false } = {}) {
  const { HarMenuUtils } = monitor.panelWin.windowRequire(
    "devtools/client/netmonitor/src/har/har-menu-utils"
  );

  info("Open the context menu on the first visible request.");
  const firstRequest =
    monitor.panelWin.document.querySelectorAll(".request-list-item")[0];

  EventUtils.sendMouseEvent({ type: "mousedown" }, firstRequest);
  EventUtils.sendMouseEvent({ type: "contextmenu" }, firstRequest);

  info("Trigger Copy All As HAR from the context menu");
  const onHarCopyDone = HarMenuUtils.once("copy-all-as-har-done");
  await selectContextMenuItem(monitor, "request-list-context-copy-all-as-har");
  const jsonString = await onHarCopyDone;

  if (asString) {
    return jsonString;
  }
  return JSON.parse(jsonString);
}

/**
 * Trigger a "save as har" from the context menu of the requests list.

 * @param {Object} monitor
 *        The network monitor object
 */

async function saveAsHARWithContextMenu(monitor, { asString = false } = {}) {
  info("Open the context menu on the first visible request.");
  const firstRequest =
    monitor.panelWin.document.querySelectorAll(".request-list-item")[0];

  EventUtils.sendMouseEvent({ type: "mousedown" }, firstRequest);
  EventUtils.sendMouseEvent({ type: "contextmenu" }, firstRequest);

  info("Trigger Save As HAR from the context menu");
  await selectContextMenuItem(monitor, "request-list-context-save-as-har");

  info("Mock the file picker dialog to save the HAR file to disk");
  const MockFilePicker = SpecialPowers.MockFilePicker;
  MockFilePicker.init(window.browsingContext);
  const nsiFile = new FileUtils.File(
    PathUtils.join(PathUtils.tempDir, `save_as_har-${Date.now()}.har`)
  );
  MockFilePicker.setFiles([nsiFile]);
  const path = nsiFile.path;

  info("Wait for the downloaded file to be fully saved to disk");
  await BrowserTestUtils.waitForCondition(() => IOUtils.exists(path));
  await BrowserTestUtils.waitForCondition(async () => {
    const { size } = await IOUtils.stat(path);
    return size > 0;
  });
  const buffer = await IOUtils.read(path);
  const savedFileContent = new TextDecoder().decode(buffer);

  if (asString) {
    return savedFileContent;
  }
  return JSON.parse(savedFileContent);
}

Messung V0.5
C=92 H=99 G=95

¤ Dauer der Verarbeitung: 0.2 Sekunden  ¤

*© 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.