<!DOCTYPE html>
<meta charset="euc-kr">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
  // This file is actually ascii, because otherwise text editors would have hard time.

  promise_test(async (t) => {
    // "icon" in Korean language
    const iconKorean = "\uc544\uc774\ucf58";
    const id = crypto.randomUUID();

    assert_true(navigator.sendBeacon(
        `/beacon/resources/url-echo.py?cmd=store&id=${id}&icon=${iconKorean}`, "x"));

    // Poll the echo endpoint until the beacon is received. The stored value
    // is the raw query string sendBeacon() sent.
    const statUrl = `/beacon/resources/url-echo.py?cmd=stat&id=${id}`;
    for (let i = 0; i < 30; i++) {
      const response = await fetch(statUrl);
      const text = await response.text();
      if (text) {
        assert_equals(text, `cmd=store&id=${id}&icon=%EC%95%84%EC%9D%B4%EC%BD%98`, "URL encoded with utf-8");
        return;
      }
      await new Promise(resolve => t.step_timeout(resolve, 200));
    }
    assert_unreached("sendBeacon was not received");
  });
</script>
