wpt / css / css-masking / animations / mask-border-outset-composition.html

Status: FAIL | Duration: 353ms | Subtests: 0/112 | Open test on wpt.live | wpt.fyi

Data from commit:
a50cb89 wpt: run reference-named files which are themselves tests (#836) (2026-09-03)

SubtestStatusMessage
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (-0.25) should be [0]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0) should be [2 4 6 8]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0.25) should be [27 29 31 33]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0.5) should be [52 54 56 58]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0.75) should be [77 79 81 83]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (1) should be [102 104 106 108]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (1.25) should be [127 129 131 133]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (-0.25) should be [0]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0) should be [2 4 6 8]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0.25) should be [27 29 31 33]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0.5) should be [52 54 56 58]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (0.75) should be [77 79 81 83]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (1) should be [102 104 106 108]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3 4] from add [1 2 3 4] to add [101 102 103 104] at (1.25) should be [127 129 131 133]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (-0.25) should be [175 250 300 450]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0) should be [200 300 400 500]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0.25) should be [225 350 500 550]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0.5) should be [250 400 600 600]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0.75) should be [275 450 700 650]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (1) should be [300 500 800 700]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (1.25) should be [325 550 900 750]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (-0.25) should be [175 250 300 450]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0) should be [200 300 400 500]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0.25) should be [225 350 500 550]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0.5) should be [250 400 600 600]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (0.75) should be [275 450 700 650]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (1) should be [300 500 800 700]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [100 200 300 400] from add [100] to add [200 300 500] at (1.25) should be [325 550 900 750]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (-0.25) should be [0 0 0px 0px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0) should be [2 4 6px 8px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0.25) should be [27 29 31px 33px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0.5) should be [52 54 56px 58px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0.75) should be [77 79 81px 83px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (1) should be [102 104 106px 108px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (1.25) should be [127 129 131px 133px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (-0.25) should be [0 0 0px 0px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0) should be [2 4 6px 8px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0.25) should be [27 29 31px 33px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0.5) should be [52 54 56px 58px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (0.75) should be [77 79 81px 83px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (1) should be [102 104 106px 108px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [1 2 3px 4px] from add [1 2 3px 4px] to add [101 102 103px 104px] at (1.25) should be [127 129 131px 133px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (-0.25) should be [225px 225px 350px 350px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0) should be [200px 200px 300px 300px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0.25) should be [175px 175px 250px 250px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0.5) should be [150px 150px 200px 200px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0.75) should be [125px 125px 150px 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (1) should be [100px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (1.25) should be [75px 75px 50px 50px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (-0.25) should be [225px 225px 350px 350px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0) should be [200px 200px 300px 300px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0.25) should be [175px 175px 250px 250px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0.5) should be [150px 150px 200px 200px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (0.75) should be [125px 125px 150px 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (1) should be [100px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20px] from add [190px 180px 290px 280px] to add [90px 80px] at (1.25) should be [75px 75px 50px 50px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (-0.25) should be [75 75px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0) should be [100 100px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0.25) should be [125 125px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0.5) should be [150 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0.75) should be [175 175px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (1) should be [200 200px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (1.25) should be [225 225px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (-0.25) should be [75 75px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0) should be [100 100px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0.25) should be [125 125px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0.5) should be [150 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (0.75) should be [175 175px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (1) should be [200 200px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20px] from replace [100 100px] to add [190 180px] at (1.25) should be [225 225px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (-0.25) should be [125px 125]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0) should be [100px 100]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0.25) should be [75px 75]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0.5) should be [50px 50]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0.75) should be [25px 25]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (1) should be [0px 0]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (1.25) should be [0px 0]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (-0.25) should be [125px 125]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0) should be [100px 100]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0.25) should be [75px 75]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0.5) should be [50px 50]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (0.75) should be [25px 25]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (1) should be [0px 0]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10px 20] from add [90px 80] to replace [0px 0 0px 0] at (1.25) should be [0px 0]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (-0.25) should be [75px 125px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0) should be [100px 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0.25) should be [125px 175px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0.5) should be [150px 200px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0.75) should be [175px 225px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (1) should be [200px 250px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (1.25) should be [225px 275px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (-0.25) should be [75px 125px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0) should be [100px 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0.25) should be [125px 175px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0.5) should be [150px 200px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (0.75) should be [175px 225px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (1) should be [200px 250px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100px 150px] to add [200px 250px] at (1.25) should be [225px 275px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (-0.25) should be [100 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0) should be [100 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0.25) should be [100 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0.5) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0.75) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (1) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false
Compositing CSS Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (1.25) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (-0.25) should be [100 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0) should be [100 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0.25) should be [100 150px]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0.5) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (0.75) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (1) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false
Compositing Web Animations: property <mask-border-outset> underlying [10 20] from add [100 150px] to add [200px 250] at (1.25) should be [200px 250]FAILassert_true: 'from' value should be supported expected true got false

/css/css-masking/animations/mask-border-outset-composition.html

<!DOCTYPE html>
<meta charset="UTF-8">
<title>mask-border-outset composition</title>
<link rel="help" href="https://drafts.fxtf.org/css-masking/#propdef-mask-border-outset">
<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
<meta name="assert" content="mask-border-outset supports animation by computed value">

<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/interpolation-testcommon.js"></script>

<body>
<script>
test_composition({
  property: 'mask-border-outset',
  underlying: '1 2 3 4',
  addFrom: '1 2 3 4',
  addTo: '101 102 103 104',
}, [
  {at: -0.25, expect: '0'}, // Non-negative.
  {at: 0, expect: '2 4 6 8'},
  {at: 0.25, expect: '27 29 31 33'},
  {at: 0.5, expect: '52 54 56 58'},
  {at: 0.75, expect: '77 79 81 83'},
  {at: 1, expect: '102 104 106 108'},
  {at: 1.25, expect: '127 129 131 133'},
]);

test_composition({
  property: 'mask-border-outset',
  underlying: '100 200 300 400',
  addFrom: '100',
  addTo: '200 300 500',
}, [
  {at: -0.25, expect: '175 250 300 450'},
  {at: 0, expect: '200 300 400 500'},
  {at: 0.25, expect: '225 350 500 550'},
  {at: 0.5, expect: '250 400 600 600'},
  {at: 0.75, expect: '275 450 700 650'},
  {at: 1, expect: '300 500 800 700'},
  {at: 1.25, expect: '325 550 900 750'},
]);

test_composition({
  property: 'mask-border-outset',
  underlying: '1 2 3px 4px',
  addFrom: '1 2 3px 4px',
  addTo: '101 102 103px 104px',
}, [
  {at: -0.25, expect: '0 0 0px 0px'}, // Non-negative.
  {at: 0, expect: '2 4 6px 8px'},
  {at: 0.25, expect: '27 29 31px 33px'},
  {at: 0.5, expect: '52 54 56px 58px'},
  {at: 0.75, expect: '77 79 81px 83px'},
  {at: 1, expect: '102 104 106px 108px'},
  {at: 1.25, expect: '127 129 131px 133px'},
]);

test_composition({
  property: 'mask-border-outset',
  underlying: '10px 20px',
  addFrom: '190px 180px 290px 280px',
  addTo: '90px 80px',
}, [
  {at: -0.25, expect: '225px 225px 350px 350px'},
  {at: 0, expect: '200px 200px 300px 300px'},
  {at: 0.25, expect: '175px 175px 250px 250px'},
  {at: 0.5, expect: '150px 150px 200px 200px'},
  {at: 0.75, expect: '125px 125px 150px 150px'},
  {at: 1, expect: '100px'},
  {at: 1.25, expect: '75px 75px 50px 50px'},
]);

test_composition({
  property: 'mask-border-outset',
  underlying: '10 20px',
  replaceFrom: '100 100px',
  addTo: '190 180px',
}, [
  {at: -0.25, expect: '75 75px'},
  {at: 0, expect: '100 100px'},
  {at: 0.25, expect: '125 125px'},
  {at: 0.5, expect: '150 150px'},
  {at: 0.75, expect: '175 175px'},
  {at: 1, expect: '200 200px'},
  {at: 1.25, expect: '225 225px'},
]);

test_composition({
  property: 'mask-border-outset',
  underlying: '10px 20',
  addFrom: '90px 80',
  replaceTo: '0px 0 0px 0',
}, [
  {at: -0.25, expect: '125px 125'},
  {at: 0, expect: '100px 100'},
  {at: 0.25, expect: '75px 75'},
  {at: 0.5, expect: '50px 50'},
  {at: 0.75, expect: '25px 25'},
  {at: 1, expect: '0px 0'},
  {at: 1.25, expect: '0px 0'}, // Non-negative.
]);

test_composition({
  property: 'mask-border-outset',
  underlying: '10 20',
  addFrom: '100px 150px',
  addTo: '200px 250px',
}, [
  {at: -0.25, expect: '75px 125px'},
  {at: 0, expect: '100px 150px'},
  {at: 0.25, expect: '125px 175px'},
  {at: 0.5, expect: '150px 200px'},
  {at: 0.75, expect: '175px 225px'},
  {at: 1, expect: '200px 250px'},
  {at: 1.25, expect: '225px 275px'},
]);

test_composition({
  property: 'mask-border-outset',
  underlying: '10 20',
  addFrom: '100 150px',
  addTo: '200px 250',
}, [
  {at: -0.25, expect: '100 150px'},
  {at: 0, expect: '100 150px'},
  {at: 0.25, expect: '100 150px'},
  {at: 0.5, expect: '200px 250'},
  {at: 0.75, expect: '200px 250'},
  {at: 1, expect: '200px 250'},
  {at: 1.25, expect: '200px 250'},
]);
</script>
</body>