How to use the bootstrap/api/services/file-service.FileService function in bootstrap

To help you get started, we’ve selected a few bootstrap examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github RequestPolicyContinued / requestpolicy / tests / xpcshell / test_json_storage.js View on Github external
/* exported run_test */

const {XPConnectService} = require("bootstrap/api/services/xpconnect-service");
const xpconnectService = new XPConnectService();
const {
  FileUtils: mozFileUtils,
} = Cu.import("resource://gre/modules/FileUtils.jsm", {});
const {FileService} = require("bootstrap/api/services/file-service");
const fileService = new FileService(xpconnectService, mozFileUtils);

const {JsonStorage} = require("bootstrap/api/storage/json-storage");
const jsonStorage = new JsonStorage(fileService);

function run_test() {
  run_next_test();
}

add_test(function() {
  // exercise
  const fullJsonStorage = jsonStorage.getAll();

  // verify
  Assert.deepEqual(fullJsonStorage, {});

  run_next_test();
github RequestPolicyContinued / requestpolicy / tests / xpcshell / head_utils.js View on Github external
} = (function() {
  const {XPConnectService} = require("bootstrap/api/services/xpconnect-service");
  const xpcService = new XPConnectService();
  const {
    FileUtils: mozFileUtils,
  } = Cu.import("resource://gre/modules/FileUtils.jsm", {});

  const {FileService} = require("bootstrap/api/services/file-service");
  const fileService = new FileService(xpcService, mozFileUtils);

  function createRPFile(aPath, aContent) {
    const file = fileService.getRPFile(aPath);

    const foStream = Cc["@mozilla.org/network/file-output-stream;1"].
        createInstance(Ci.nsIFileOutputStream);
    foStream.init(file, 0x02 | 0x08 | 0x20, 0o666, 0);

    const converter = Cc["@mozilla.org/intl/converter-output-stream;1"].
        createInstance(Ci.nsIConverterOutputStream);
    converter.init(foStream, "UTF-8", 0, 0);
    converter.writeString(aContent);
    converter.close(); // this closes foStream
  }

  function removeAllRPFiles() {
github RequestPolicyContinued / requestpolicy / tests / xpcshell / test_fileservice.js View on Github external
/* exported run_test */

const {XPConnectService} = require("bootstrap/api/services/xpconnect-service");
const xpcService = new XPConnectService();
const {
  FileUtils: mozFileUtils,
} = Cu.import("resource://gre/modules/FileUtils.jsm", {});

const {FileService} = require("bootstrap/api/services/file-service");
const fileService = new FileService(xpcService, mozFileUtils);

function run_test() {
  run_next_test();
}

add_test(function() {
  // Make sure the RP user dir doesn't already exist.

  // exercise
  const rpUserDir = do_get_profile();
  rpUserDir.append("requestpolicy");

  // verify
  do_check_false(rpUserDir.exists());

  run_next_test();
github RequestPolicyContinued / requestpolicy / tests / xpcshell / test_storage_api.js View on Github external
const {Storage} = require("bootstrap/api/storage/storage.module");
const {SyncLocalStorageArea} = require("bootstrap/api/storage/sync-local-storage-area");
const {Log} = require("lib/classes/log");

const log = new Log();
const xpconnectService = new XPConnectService();
const jsmService = new JSMService(Cu);
const mozFileUtils = jsmService.getFileUtils();
const mozServices = jsmService.getServices();
const rpPrefBranch = new PrefBranch(
    Ci,
    mozServices.prefs,
    xpconnectService,
    "extensions.requestpolicy."
);
const fileService = new FileService(xpconnectService, mozFileUtils);
const jsonStorage = new JsonStorage(fileService);
const syncLocalStorageArea = new SyncLocalStorageArea(
    mozServices.prefs, rpPrefBranch, jsonStorage
);

function createStorageApi() {
  return new Storage(log, syncLocalStorageArea, rpPrefBranch);
}

//
// get()
//

["foo", ["foo"], {foo: "DEFAULT"}].forEach((getParameter) => {
  add_task(function * () {
    // setup