<!doctype html>
<meta charset=utf-8>
<title>Test PermissionStatus's name attribute.</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>

<script>
promise_test(async () => {
  const { state: initialState } = await navigator.permissions.query({
    name: "geolocation",
  });

  const pass = new Promise(async (resolve) => {
    const status = await navigator.permissions.query({
      name: "geolocation",
    });
    status.addEventListener("change", resolve, { once: true });
  });

  // Will cause change event to be dispatched.
  await test_driver.set_permission({ name: "geolocation" }, "granted");

  // Wait for the change event to be dispatched.
  await pass;

  // Reset the permission to its default value.
  await test_driver.set_permission({ name: "geolocation" }, initialState);
}, "status is not garbage collected when it goes out of scope");

</script>
