debug('"behavior" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" behavior="slide">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.behavior="alternate";
+marquee.behavior = "alternate";
shouldBe('marquee.behavior', '"alternate"');
debug('"bgColor" IDL attribute reflects content attribute:');
debug('"bgColor" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" bgcolor="red">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.bgColor="blue";
+marquee.bgColor = "blue";
shouldBe('marquee.bgColor', '"blue"');
debug('"direction" IDL attribute reflects content attribute:');
debug('"direction" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" direction="right">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.direction="left";
+marquee.direction = "left";
shouldBe('marquee.direction', '"left"');
debug('"height" IDL attribute reflects content attribute:');
debug('"height" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" height="100px">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.height="200px";
+marquee.height = "200px";
shouldBe('marquee.height', '"200px"');
debug('"hspace" IDL attribute reflects content attribute:');
debug('"hspace" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" hspace="10">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.hspace=20;
+marquee.hspace = 20;
shouldBe('marquee.hspace', '20');
debug('"hspace" IDL attribute is 0 when content attribute is negative:');
debug('"loop" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" loop="3">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.loop=4;
+marquee.loop = 4;
shouldBe('marquee.loop', '4');
debug('"scrollAmount" IDL attribute reflects content attribute:');
debug('"scrollAmount" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" scrollamount="5">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.scrollAmount=6;
+marquee.scrollAmount = 6;
shouldBe('marquee.scrollAmount', '6');
debug('"scrollDelay" IDL attribute reflects content attribute:');
debug('"scrollDelay" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" scrolldelay="50">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.scrollDelay=60;
+marquee.scrollDelay = 60;
shouldBe('marquee.scrollDelay', '60');
debug('"trueSpeed" IDL attribute reflects content attribute:');
debug('"trueSpeed" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" truespeed="true">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.trueSpeed=false;
+marquee.trueSpeed = false;
shouldBe('marquee.trueSpeed', 'false');
+shouldBe('marquee.hasAttribute("truespeed")', 'false');
+
+debug('"trueSpeed" IDL attribute can be modified:');
+testParent.innerHTML = '<marquee id="marquee" truespeed="true"></marquee>';
+marquee = document.getElementById('marquee');
+marquee.trueSpeed = null;
+shouldBe('marquee.hasAttribute("truespeed")', 'false');
+
+debug('"trueSpeed" IDL attribute can be modified:');
+testParent.innerHTML = '<marquee id="marquee" truespeed="true"></marquee>';
+marquee = document.getElementById('marquee');
+marquee.trueSpeed = undefined;
+shouldBe('marquee.hasAttribute("truespeed")', 'false');
debug('"vspace" IDL attribute reflects content attribute:');
testParent.innerHTML = '<marquee id="marquee" vspace="10">test</marquee>';
debug('"vspace" IDL attribute can be modified:');
testParent.innerHTML = '<marquee id="marquee" vspace="10">test</marquee>';
marquee = document.getElementById('marquee');
-marquee.vspace=20;
+marquee.vspace = 20;
shouldBe('marquee.vspace', '20');
debug('"vspace" IDL attribute is 0 when content attribute is negative:');