| Index: third_party/WebKit/LayoutTests/typedcssom/inlinestyle/properties/property-suite.js
|
| diff --git a/third_party/WebKit/LayoutTests/typedcssom/inlinestyle/properties/property-suite.js b/third_party/WebKit/LayoutTests/typedcssom/inlinestyle/properties/property-suite.js
|
| index e3837b564afa2b049dd6a864fcec01c1489b9fc6..5dbcaaf893355e675291428df1692948ce1604a2 100644
|
| --- a/third_party/WebKit/LayoutTests/typedcssom/inlinestyle/properties/property-suite.js
|
| +++ b/third_party/WebKit/LayoutTests/typedcssom/inlinestyle/properties/property-suite.js
|
| @@ -28,6 +28,7 @@
|
|
|
| function runInlineStylePropertyMapTests(config) {
|
| let element = document.createElement('div');
|
| + document.documentElement.appendChild(element);
|
| let validKeywords = config.validKeywords.concat([
|
| // CSS-wide keywords
|
| 'initial',
|
| @@ -78,14 +79,19 @@ function runSetterTests(
|
| element.style = '';
|
| element.styleMap.set(propertyName, new CSSKeywordValue(keyword));
|
| assert_equals(element.style[propertyName], keyword);
|
| + // Force a style recalc to check for crashes in style recalculation.
|
| + getComputedStyle(element)[propertyName];
|
| + assert_equals(element.style[propertyName], keyword);
|
| }, 'Setting ' + propertyName + ' to ' + keyword);
|
| }
|
| for (let validObject of validObjects) {
|
| test(function() {
|
| element.style = '';
|
| -
|
| element.styleMap.set(propertyName, validObject);
|
| assert_equals(element.style[propertyName], validObject.cssText);
|
| + // Force a style recalc to check for crashes in style recalculation.
|
| + getComputedStyle(element)[propertyName];
|
| + assert_equals(element.style[propertyName], validObject.cssText);
|
| }, 'Setting ' + propertyName + ' to ' + validObject.constructor.name +
|
| ' with value ' + validObject.cssText);
|
| }
|
| @@ -143,11 +149,15 @@ function runSequenceSetterTests(
|
| propertyName, validObject, invalidObject, element) {
|
| test(function() {
|
| element.style = '';
|
| -
|
| element.styleMap.set(propertyName, [validObject, validObject]);
|
| assert_equals(
|
| element.style[propertyName], validObject.cssText + ', ' +
|
| validObject.cssText);
|
| + // Force a style recalc to check for crashes in style recalculation.
|
| + getComputedStyle(element)[propertyName];
|
| + assert_equals(
|
| + element.style[propertyName], validObject.cssText + ', ' +
|
| + validObject.cssText);
|
| }, 'Set ' + propertyName + ' to a sequence');
|
|
|
| test(function() {
|
| @@ -170,6 +180,11 @@ function runAppendTests(
|
| assert_equals(
|
| element.style[propertyName], validObject.cssText + ', ' +
|
| validObject.cssText);
|
| + // Force a style recalc to check for crashes in style recalculation.
|
| + getComputedStyle(element)[propertyName];
|
| + assert_equals(
|
| + element.style[propertyName], validObject.cssText + ', ' +
|
| + validObject.cssText);
|
| }, 'Appending a ' + validObject.constructor.name + ' to ' + propertyName);
|
|
|
| test(function() {
|
| @@ -179,6 +194,11 @@ function runAppendTests(
|
| assert_equals(
|
| element.style[propertyName], validObject.cssText + ', ' +
|
| validObject.cssText);
|
| + // Force a style recalc to check for crashes in style recalculation.
|
| + getComputedStyle(element)[propertyName];
|
| + assert_equals(
|
| + element.style[propertyName], validObject.cssText + ', ' +
|
| + validObject.cssText);
|
| }, 'Append a sequence to ' + propertyName);
|
|
|
| // Negative tests
|
| @@ -237,6 +257,10 @@ function runDeletionTests(propertyName, validObject, element) {
|
| element.styleMap.delete(propertyName);
|
| assert_equals(element.style[propertyName], '');
|
| assert_equals(element.styleMap.get(propertyName), null);
|
| + // Force a style recalc to check for crashes in style recalculation.
|
| + getComputedStyle(element)[propertyName];
|
| + assert_equals(element.style[propertyName], '');
|
| + assert_equals(element.styleMap.get(propertyName), null);
|
| }, 'Delete ' + propertyName + ' removes the value from the styleMap');
|
| }
|
|
|
| @@ -244,9 +268,10 @@ function runGetPropertiesTests(propertyName, validObject, element) {
|
| test(function() {
|
| element.style = '';
|
| assert_array_equals(element.styleMap.getProperties(), []);
|
| -
|
| element.styleMap.set(propertyName, validObject);
|
| -
|
| + assert_array_equals(element.styleMap.getProperties(), [propertyName]);
|
| + // Force a style recalc to check for crashes in style recalculation.
|
| + getComputedStyle(element)[propertyName];
|
| assert_array_equals(element.styleMap.getProperties(), [propertyName]);
|
| }, propertyName + ' shows up in getProperties');
|
| }
|
|
|