<!DOCTYPE html>
<meta charset="utf-8">
<title>Network errors with embed elements</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>

<body>
<script>
"use strict";

async_test(t => {
  const embed = document.createElement("embed");
  embed.src = "//{{hosts[][nonexistent]}}/";
  embed.onload = () => t.done();
  embed.onerror = t.unreached_func("error event must not fire");
  document.body.append(embed);
}, "new embed: nonexistent host");

async_test(t => {
  const embed = document.createElement("embed");
  embed.src = "../resources/not-embeddable.html";
  embed.onload = () => t.done();
  embed.onerror = t.unreached_func("error event must not fire");
  document.body.append(embed);
}, "new embed: X-Frame-Options prevents embedding");

async_test(t => {
  const embed = document.createElement("embed");
  embed.src = "/common/blank.html";
  embed.name = "existingEmbed1";
  embed.onload = t.step_func(() => {
    embed.onload = () => t.done();
    embed.onerror = t.unreached_func("error event must not fire 2");

    frames.existingEmbed1.location.href = "//{{hosts[][nonexistent]}}/";
  });
  embed.onerror = t.unreached_func("error event must not fire 1");
  document.body.append(embed);
}, "navigating an existing embed: nonexistent host");

async_test(t => {
  const embed = document.createElement("embed");
  embed.src = "/common/blank.html";
  embed.name = "existingEmbed2";
  embed.onload = t.step_func(() => {
    embed.onload = () => t.done();
    embed.onerror = t.unreached_func("error event must not fire 2");

    frames.existingEmbed2.location.href = "../resources/not-embeddable.html";
  });
  embed.onerror = t.unreached_func("error event must not fire 1");
  document.body.append(embed);
}, "navigating an existing embed: X-Frame-Options prevents embedding");
</script>
