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

