// DO NOT EDIT! This test has been generated by tools/gentest.py.
// OffscreenCanvas test in a worker:2d.line.width.valid
// Description:Setting lineWidth to valid values works
// Note:

importScripts("/resources/testharness.js");
importScripts("/common/canvas-tests.js");

var t = async_test("Setting lineWidth to valid values works");
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 = "1e1";
_assertSame(ctx.lineWidth, 10, "ctx.lineWidth", "10");
ctx.lineWidth = 1/1024;
_assertSame(ctx.lineWidth, 1/1024, "ctx.lineWidth", "1/1024");
ctx.lineWidth = 1000;
_assertSame(ctx.lineWidth, 1000, "ctx.lineWidth", "1000");

t.done();

});
done();
