<!DOCTYPE html>
<html class="reftest-wait">
<link rel="match" href="parse-input-arguments-ref.html">
<style>
.container {
  width: 100px;
  height: 100px;
}

#canvas-geometry {
  background-image: paint(geometry);
}
</style>
<script src="/common/reftest-wait.js"></script>
<script src="/common/css-paint-tests.js"></script>
<body>
<div id="canvas-geometry" class="container"></div>

<script id="code" type="text/worklet">
var testsPassed = false;
try {
    registerPaint('foo12', class {
        static get contextOptions() {
            return 42;
        }
    });
} catch(ex) {
    if (ex.name == "TypeError" && ex.message == "Failed to execute 'registerPaint' on 'PaintWorkletGlobalScope': cannot convert to dictionary.")
        testsPassed = true;
}

registerPaint('geometry', class {
    paint(ctx, geom) {
        if (testsPassed)
            ctx.strokeStyle = 'green';
        else
            ctx.strokeStyle = 'red';
        ctx.lineWidth = 4;
        ctx.strokeRect(0, 0, geom.width, geom.height);
    }
});
</script>

<script>
    importPaintWorkletAndTerminateTestAfterAsyncPaint(document.getElementById('code').textContent);
</script>
</body>
</html>
