summaryrefslogtreecommitdiffstats
path: root/dom/push/test/xpcshell/test_service_parent.js
blob: ce8e3074c89e5501672f3fb4a08cc7c7efbdbb2c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

const { PushDB, PushService, PushServiceWebSocket } = serviceExports;

function run_test() {
  do_get_profile();
  setPrefs();
  run_next_test();
}

add_task(async function test_service_parent() {
  let db = PushServiceWebSocket.newPushDB();
  registerCleanupFunction(() => {
    return db.drop().then(() => db.close());
  });
  await setUpServiceInParent(PushService, db);

  // Accessing the lazy service getter will start the service in the main
  // process.
  equal(
    PushServiceComponent.pushTopic,
    "push-message",
    "Wrong push message observer topic"
  );
  equal(
    PushServiceComponent.subscriptionChangeTopic,
    "push-subscription-change",
    "Wrong subscription change observer topic"
  );

  await run_test_in_child("./test_service_child.js");

  await tearDownServiceInParent(db);
});