<!DOCTYPE html>
<!-- DO NOT EDIT! This test has been generated by tools/gentest.py. -->
<title>OffscreenCanvas test: 2d.line.width.invalid</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/canvas-tests.js"></script>

<h1>2d.line.width.invalid</h1>
<p class="desc">Setting lineWidth to invalid values is ignored</p>


<script>
var t = async_test("Setting lineWidth to invalid values is ignored");
t.step(function() {

var offscreenCanvas = new OffscreenCanvas(100, 50);
var ctx = offscreenCanvas.getContext('2d');

ctx.lineWidth = 1.5;
_assertSame(ctx.lineWidth, 1.5, "ctx.lineWidth", "1.5");
ctx.lineWidth = 1.5;
ctx.lineWidth = 0;
_assertSame(ctx.lineWidth, 1.5, "ctx.lineWidth", "1.5");
ctx.lineWidth = 1.5;
ctx.lineWidth = -1;
_assertSame(ctx.lineWidth, 1.5, "ctx.lineWidth", "1.5");
ctx.lineWidth = 1.5;
ctx.lineWidth = Infinity;
_assertSame(ctx.lineWidth, 1.5, "ctx.lineWidth", "1.5");
ctx.lineWidth = 1.5;
ctx.lineWidth = -Infinity;
_assertSame(ctx.lineWidth, 1.5, "ctx.lineWidth", "1.5");
ctx.lineWidth = 1.5;
ctx.lineWidth = NaN;
_assertSame(ctx.lineWidth, 1.5, "ctx.lineWidth", "1.5");

t.done();

});
</script>
