| <!DOCTYPE html> |
| <html> |
| <head> |
| <title>Dataset - Set</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| </head> |
| <body> |
| <h1>Dataset - Set</h1> |
| <div id="log"></div> |
| <script> |
| function testSet(prop, expected) |
| { |
| var d = document.createElement("div"); |
| d.dataset[prop] = "value"; |
| return d.getAttribute(expected) == "value"; |
| } |
| |
| test(function() { assert_true(testSet('foo', 'data-foo')); }, |
| "Setting element.dataset['foo'] should also change the value of element.getAttribute('data-foo')'"); |
| test(function() { assert_true(testSet('fooBar', 'data-foo-bar')); }, |
| "Setting element.dataset['fooBar'] should also change the value of element.getAttribute('data-foo-bar')'"); |
| test(function() { assert_true(testSet('-', 'data--')); }, |
| "Setting element.dataset['-'] should also change the value of element.getAttribute('data--')'"); |
| test(function() { assert_true(testSet('Foo', 'data--foo')); }, |
| "Setting element.dataset['Foo'] should also change the value of element.getAttribute('data--foo')'"); |
| test(function() { assert_true(testSet('-Foo', 'data---foo')); }, |
| "Setting element.dataset['-Foo'] should also change the value of element.getAttribute('data---foo')'"); |
| test(function() { assert_true(testSet('', 'data-')); }, |
| "Setting element.dataset[''] should also change the value of element.getAttribute('data-')'"); |
| test(function() { assert_true(testSet('\xE0', 'data-\xE0')); }, |
| "Setting element.dataset['\xE0'] should also change the value of element.getAttribute('data-\xE0')'"); |
| test(function() { assert_throws('SYNTAX_ERR', function() { testSet('-foo', 'dummy') }); }, |
| "Setting element.dataset['-foo'] should throw a SYNTAX_ERR'"); |
| test(function() { assert_throws('INVALID_CHARACTER_ERR', function() { testSet('foo\x20', 'dummy') }); }, |
| "Setting element.dataset['foo\x20'] should throw an INVALID_CHARACTER_ERR'"); |
| test(function() { assert_throws('INVALID_CHARACTER_ERR', function() { testSet('foo\uF900', 'dummy') }); }, |
| "Setting element.dataset['foo\uF900'] should throw an INVALID_CHARACTER_ERR'"); |
| |
| </script> |
| </body> |
| </html> |