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

"use strict";

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

add_task(async function test_unregister_not_found() {
  PushService.init({
    serverURI: "wss://push.example.org/",
    makeWebSocket(uri) {
      return new MockWebSocket(uri, {
        onHello() {
          this.serverSendMsg(
            JSON.stringify({
              messageType: "hello",
              status: 200,
              uaid: "f074ed80-d479-44fa-ba65-792104a79ea9",
            })
          );
        },
      });
    },
  });

  let result = await PushService.unregister({
    scope: "https://example.net/nonexistent",
    originAttributes: ChromeUtils.originAttributesToSuffix({
      inIsolatedMozBrowser: false,
    }),
  });
  Assert.strictEqual(
    result,
    false,
    "unregister should resolve with false for nonexistent scope"
  );
});
