<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>window.performance User Timing mark() method is throwing the proper exceptions</title>
        <link rel="author" title="Microsoft" href="http://www.microsoft.com/" />
        <link rel="help" href="http://w3c.github.io/user-timing/#dom-performance-mark"/>
        <script src="/resources/testharness.js"></script>
        <script src="/resources/testharnessreport.js"></script>
        <script src="resources/webperftestharness.js"></script>

    <script>
function test_exception(attrName) {
    test(function () {
        assert_throws_dom("SyntaxError", function () {
            window.performance.mark(attrName);
        })
    }, "window.performance.mark(\"" + attrName + "\") throws a SyntaxError exception.");
}

test(() => {
    assert_throws_js(TypeError, function() {
        window.performance.mark();
    });
}, 'window.performance.mark() throws a TypeError exception.')

// loop through mark scenarios
for (var i in timingAttributes) {
    test_exception(timingAttributes[i]);
}
    </script>
    </head>
    <body>
        <h1>Description</h1>
        <p>This test validates that the performance.mark() method throws a SYNTAX_ERR exception whenever a navigation
           timing attribute is provided for the name parameter.
        </p>

        <div id="log"></div>
    </body>
</html>
