| Test the parsing of the filter property. |
| |
| On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". |
| |
| |
| |
| Basic reference : url('#a') |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "url(\"#a\")" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "url(\"#a\")" |
| |
| Bare unquoted reference converting to quoted form : url(#a) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "url(\"#a\")" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "url(\"#a\")" |
| |
| Multiple references : url('#a') url('#b') |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "url(\"#a\") url(\"#b\")" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "url(\"#a\")" |
| PASS subRule.cssText is "url(\"#b\")" |
| |
| Reference as 2nd value : grayscale(1) url('#a') |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(1) url(\"#a\")" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "grayscale(1)" |
| PASS subRule.cssText is "url(\"#a\")" |
| |
| Integer value : grayscale(1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "grayscale(1)" |
| |
| Percentage value : grayscale(50%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(50%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "grayscale(50%)" |
| |
| Float value converts to integer : grayscale(1.0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "grayscale(1)" |
| |
| Values over 1 are clamped : grayscale(1.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "grayscale(1)" |
| |
| Percentages over 100 are clamped : grayscale(320%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(100%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "grayscale(100%)" |
| |
| Zero value : grayscale(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(0)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "grayscale(0)" |
| |
| No values : grayscale() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "grayscale()" |
| |
| Multiple values : grayscale(0.5) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(0.5) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "grayscale(0.5)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Integer value : sepia(1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "sepia(1)" |
| |
| Percentage value : sepia(50%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(50%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "sepia(50%)" |
| |
| Float value converts to integer : sepia(1.0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "sepia(1)" |
| |
| Values over 1 are clamped : sepia(8) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "sepia(1)" |
| |
| Percentages over 100 are clamped : sepia(101%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(100%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "sepia(100%)" |
| |
| Negative value : sepia(-0.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Zero value : sepia(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(0)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "sepia(0)" |
| |
| No values : sepia() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "sepia()" |
| |
| Negative value : grayscale(-0.2) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Multiple values : sepia(0.5) sepia(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(0.5) sepia(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "sepia(0.5)" |
| PASS subRule.cssText is "sepia(0.25)" |
| |
| Rule combinations : sepia(0.5) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "sepia(0.5) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "sepia(0.5)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Integer value : saturate(1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "saturate(1)" |
| |
| Percentage value : saturate(50%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(50%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "saturate(50%)" |
| |
| Percentage value > 1 : saturate(250%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(250%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "saturate(250%)" |
| |
| Float value converts to integer : saturate(1.0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "saturate(1)" |
| |
| Input value > 1 : saturate(5.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(5.5)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "saturate(5.5)" |
| |
| Negative value : saturate(-0.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Zero value : saturate(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(0)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "saturate(0)" |
| |
| No values : saturate() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "saturate()" |
| |
| Multiple values : saturate(0.5) saturate(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(0.5) saturate(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "saturate(0.5)" |
| PASS subRule.cssText is "saturate(0.25)" |
| |
| Rule combinations : saturate(0.5) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "saturate(0.5) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "saturate(0.5)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Degrees value as integer : hue-rotate(10deg) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(10deg)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate(10deg)" |
| |
| Degrees float value converts to integer : hue-rotate(10.0deg) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(10deg)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate(10deg)" |
| |
| Radians value : hue-rotate(10rad) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(10rad)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate(10rad)" |
| |
| Gradians value : hue-rotate(10grad) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(10grad)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate(10grad)" |
| |
| Turns value : hue-rotate(0.5turn) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(0.5turn)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate(0.5turn)" |
| |
| Negative value : hue-rotate(-370.2deg) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(-370.2deg)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate(-370.2deg)" |
| |
| Zero value : hue-rotate(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(0deg)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate(0deg)" |
| |
| No values : hue-rotate() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "hue-rotate()" |
| |
| Rule combinations : hue-rotate(10deg) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "hue-rotate(10deg) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "hue-rotate(10deg)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Integer value : invert(1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "invert(1)" |
| |
| Percentage value : invert(50%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(50%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "invert(50%)" |
| |
| Float value converts to integer : invert(1.0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "invert(1)" |
| |
| Values over 1 are clamped : invert(1.01) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "invert(1)" |
| |
| Percentages over 100 are clamped : invert(500000%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(100%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "invert(100%)" |
| |
| Zero value : invert(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(0)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "invert(0)" |
| |
| Negative value : invert(-0.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| No values : invert() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "invert()" |
| |
| Multiple values : invert(0.5) invert(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(0.5) invert(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "invert(0.5)" |
| PASS subRule.cssText is "invert(0.25)" |
| |
| Rule combinations : invert(0.5) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "invert(0.5) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "invert(0.5)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Integer value : opacity(1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "opacity(1)" |
| |
| Percentage value : opacity(50%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(50%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "opacity(50%)" |
| |
| Float value converts to integer : opacity(1.0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "opacity(1)" |
| |
| Values over 1 are clamped : opacity(2134687326) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "opacity(1)" |
| |
| Percentages over 100 are clamped : opacity(500%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(100%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "opacity(100%)" |
| |
| Negative value : opacity(-0.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Zero value : opacity(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(0)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "opacity(0)" |
| |
| No values : opacity() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "opacity()" |
| |
| Multiple values : opacity(0.5) opacity(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(0.5) opacity(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "opacity(0.5)" |
| PASS subRule.cssText is "opacity(0.25)" |
| |
| Rule combinations : opacity(0.5) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "opacity(0.5) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "opacity(0.5)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Integer value : brightness(1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "brightness(1)" |
| |
| Percentage value : brightness(50%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness(50%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "brightness(50%)" |
| |
| Float value converts to integer : brightness(1.0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "brightness(1)" |
| |
| Zero value : brightness(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness(0)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "brightness(0)" |
| |
| Negative value : brightness(-2) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| No values : brightness() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "brightness()" |
| |
| Multiple values : brightness(0.5) brightness(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness(0.5) brightness(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "brightness(0.5)" |
| PASS subRule.cssText is "brightness(0.25)" |
| |
| Rule combinations : brightness(0.5) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness(0.5) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "brightness(0.5)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Value less than -100% : brightness(-1.1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Negative value : brightness(-0.6) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Parameter more than 100% : brightness(101%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "brightness(101%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "brightness(101%)" |
| |
| Rule combinations : grayscale(0.25) brightness(0.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(0.25) brightness(0.5)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "grayscale(0.25)" |
| PASS subRule.cssText is "brightness(0.5)" |
| |
| Integer value : contrast(1) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "contrast(1)" |
| |
| Percentage value : contrast(50%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(50%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "contrast(50%)" |
| |
| Percentage value > 1 : contrast(250%) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(250%)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "contrast(250%)" |
| |
| Float value converts to integer : contrast(1.0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(1)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "contrast(1)" |
| |
| Zero value : contrast(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(0)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "contrast(0)" |
| |
| Negative value : contrast(-0.2) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| No values : contrast() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "contrast()" |
| |
| Value greater than one : contrast(2) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(2)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "contrast(2)" |
| |
| Negative value : contrast(-0.8) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Multiple values : contrast(0.5) contrast(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(0.5) contrast(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "contrast(0.5)" |
| PASS subRule.cssText is "contrast(0.25)" |
| |
| Rule combinations : contrast(0.5) grayscale(0.25) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "contrast(0.5) grayscale(0.25)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "contrast(0.5)" |
| PASS subRule.cssText is "grayscale(0.25)" |
| |
| Rule combinations : grayscale(0.25) contrast(0.5) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(0.25) contrast(0.5)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 2 |
| PASS subRule.cssText is "grayscale(0.25)" |
| PASS subRule.cssText is "contrast(0.5)" |
| |
| One zero to px : blur(0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "blur(0px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "blur(0px)" |
| |
| One length : blur(10px) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "blur(10px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "blur(10px)" |
| |
| No values : blur() |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "blur()" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "blur()" |
| |
| Negative value : blur(-2px) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 0 |
| PASS declaration.getPropertyValue('filter') is '' |
| |
| Color then three values : drop-shadow(red 1px 2px 3px) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "drop-shadow(red 1px 2px 3px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "drop-shadow(red 1px 2px 3px)" |
| |
| Three values then color : drop-shadow(1px 2px 3px red) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "drop-shadow(red 1px 2px 3px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "drop-shadow(red 1px 2px 3px)" |
| |
| Color then three values with zero length : drop-shadow(#abc 0 0 0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "drop-shadow(rgb(170, 187, 204) 0px 0px 0px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "drop-shadow(rgb(170, 187, 204) 0px 0px 0px)" |
| |
| Three values with zero length : drop-shadow(0 0 0) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "drop-shadow(0px 0px 0px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "drop-shadow(0px 0px 0px)" |
| |
| Two values no color : drop-shadow(1px 2px) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "drop-shadow(1px 2px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 1 |
| PASS subRule.cssText is "drop-shadow(1px 2px)" |
| |
| Multiple operations : grayscale(0.5) sepia(0.25) saturate(0.75) hue-rotate(35deg) invert(0.2) opacity(0.9) blur(5px) drop-shadow(green 1px 2px 3px) |
| PASS cssRule.type is 1 |
| PASS declaration.length is 1 |
| PASS declaration.getPropertyValue('filter') is "grayscale(0.5) sepia(0.25) saturate(0.75) hue-rotate(35deg) invert(0.2) opacity(0.9) blur(5px) drop-shadow(green 1px 2px 3px)" |
| PASS jsWrapperClass(filterRule) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.__proto__) is 'CSSValueList' |
| PASS jsWrapperClass(filterRule.constructor) is 'Function' |
| PASS filterRule.length is 8 |
| PASS subRule.cssText is "grayscale(0.5)" |
| PASS subRule.cssText is "sepia(0.25)" |
| PASS subRule.cssText is "saturate(0.75)" |
| PASS subRule.cssText is "hue-rotate(35deg)" |
| PASS subRule.cssText is "invert(0.2)" |
| PASS subRule.cssText is "opacity(0.9)" |
| PASS subRule.cssText is "blur(5px)" |
| PASS subRule.cssText is "drop-shadow(green 1px 2px 3px)" |
| PASS successfullyParsed is true |
| |
| TEST COMPLETE |
| |