<!DOCTYPE html>
<title>Test that removing invalid event listeners from image documents doesn't crash.</title>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<script>
async_test(function(t) {
    if (window.testRunner) {
        testRunner.setCanOpenWindows();
    }
    var newWindow = window.open("resources/dice.png");
    newWindow.onload =  t.step_func_done(function() {
        newWindow.addEventListener("resize", function () {;});
        try {
            newWindow.removeEventListener("resize", 2);
        } catch (e) {
            assert_equals(e.message, "Failed to execute 'removeEventListener' on 'EventTarget': The callback provided as parameter 2 is not an object.");
        }
    });
});
</script>
