From f5cd853597701613cf091fed129afe47013255de Mon Sep 17 00:00:00 2001 From: Sam Atkins Date: Fri, 23 May 2025 16:19:35 +0100 Subject: [PATCH] LibWeb/CSS: Avoid calling to_font_weight() when serializing font This function attempts to resolve `lighter` and `bolder`, which we don't want to do when serializing - that should happen in style computation. This has the unexpected bonus of 37 more WPT passes! --- .../CSS/StyleValues/ShorthandStyleValue.cpp | 5 +- .../css/css-fonts/parsing/font-valid.txt | 77 +++++++++---------- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp b/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp index c30066d9947..0dd1b93c3e9 100644 --- a/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp +++ b/Libraries/LibWeb/CSS/StyleValues/ShorthandStyleValue.cpp @@ -238,8 +238,9 @@ String ShorthandStyleValue::to_string(SerializationMode mode) const append(font_style_string); if (font_variant_string != "normal"sv && font_variant_string != "initial"sv) append(font_variant_string); - if (font_weight->to_font_weight() != Gfx::FontWeight::Regular && font_weight->to_keyword() != Keyword::Initial) - append(font_weight->to_string(mode)); + auto font_weight_string = font_weight->to_string(mode); + if (font_weight_string != "normal"sv && font_weight_string != "initial"sv && font_weight_string != "400"sv) + append(font_weight_string); if (font_width->to_keyword() != Keyword::Normal && font_width->to_keyword() != Keyword::Initial) append(font_width->to_string(mode)); append(font_size->to_string(mode)); diff --git a/Tests/LibWeb/Text/expected/wpt-import/css/css-fonts/parsing/font-valid.txt b/Tests/LibWeb/Text/expected/wpt-import/css/css-fonts/parsing/font-valid.txt index 682caaf7305..a4afacfef87 100644 --- a/Tests/LibWeb/Text/expected/wpt-import/css/css-fonts/parsing/font-valid.txt +++ b/Tests/LibWeb/Text/expected/wpt-import/css/css-fonts/parsing/font-valid.txt @@ -2,8 +2,7 @@ Harness status: OK Found 315 tests -278 Pass -37 Fail +315 Pass Pass caption should be a supported system font. Pass icon should be a supported system font. Pass menu should be a supported system font. @@ -27,13 +26,13 @@ Pass e.style['font'] = "normal normal oblique extra-condensed 10px/normal \"FB A Pass e.style['font'] = "normal normal small-caps 20%/1.2 serif" should set the property value Pass e.style['font'] = "normal normal small-caps normal calc(30% - 40px)/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "normal normal small-caps italic xx-small cursive" should set the property value -Fail e.style['font'] = "normal normal small-caps lighter medium/normal fantasy" should set the property value +Pass e.style['font'] = "normal normal small-caps lighter medium/normal fantasy" should set the property value Pass e.style['font'] = "normal normal small-caps condensed xx-large/1.2 monospace" should set the property value Pass e.style['font'] = "normal normal 100 larger/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "normal normal 900 normal smaller \"FB Armada\"" should set the property value Pass e.style['font'] = "normal normal bold oblique 10px/normal serif" should set the property value Pass e.style['font'] = "normal normal bolder small-caps 20%/1.2 sans-serif" should set the property value -Fail e.style['font'] = "normal normal lighter semi-condensed calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value +Pass e.style['font'] = "normal normal lighter semi-condensed calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value Pass e.style['font'] = "normal normal semi-expanded xx-small fantasy" should set the property value Pass e.style['font'] = "normal normal expanded normal medium/normal monospace" should set the property value Pass e.style['font'] = "normal normal extra-expanded italic xx-large/1.2 Menu" should set the property value @@ -50,7 +49,7 @@ Pass e.style['font'] = "normal italic small-caps normal smaller sans-serif" shou Pass e.style['font'] = "normal oblique small-caps bold 10px/normal cursive" should set the property value Pass e.style['font'] = "normal italic small-caps condensed 20%/1.2 fantasy" should set the property value Pass e.style['font'] = "normal oblique bolder calc(30% - 40px)/calc(120% + 1.2em) monospace" should set the property value -Fail e.style['font'] = "normal italic lighter normal xx-small Menu" should set the property value +Pass e.style['font'] = "normal italic lighter normal xx-small Menu" should set the property value Pass e.style['font'] = "normal oblique 100 small-caps medium/normal \"FB Armada\"" should set the property value Pass e.style['font'] = "normal italic 900 semi-condensed xx-large/1.2 serif" should set the property value Pass e.style['font'] = "normal oblique semi-expanded larger/calc(120% + 1.2em) sans-serif" should set the property value @@ -65,7 +64,7 @@ Pass e.style['font'] = "normal small-caps normal bolder larger/calc(120% + 1.2em Pass e.style['font'] = "normal small-caps normal ultra-condensed smaller fantasy" should set the property value Pass e.style['font'] = "normal small-caps italic 10px/normal monospace" should set the property value Pass e.style['font'] = "normal small-caps oblique normal 20%/1.2 Menu" should set the property value -Fail e.style['font'] = "normal small-caps italic lighter calc(30% - 40px)/calc(120% + 1.2em) \"FB Armada\"" should set the property value +Pass e.style['font'] = "normal small-caps italic lighter calc(30% - 40px)/calc(120% + 1.2em) \"FB Armada\"" should set the property value Pass e.style['font'] = "normal small-caps oblique extra-condensed xx-small serif" should set the property value Pass e.style['font'] = "normal small-caps 100 medium/normal sans-serif" should set the property value Pass e.style['font'] = "normal small-caps 900 normal xx-large/1.2 cursive" should set the property value @@ -74,22 +73,22 @@ Pass e.style['font'] = "normal small-caps bolder condensed smaller monospace" sh Pass e.style['font'] = "normal small-caps semi-condensed 10px/normal Menu" should set the property value Pass e.style['font'] = "normal small-caps semi-expanded normal 20%/1.2 \"FB Armada\"" should set the property value Pass e.style['font'] = "normal small-caps expanded oblique calc(30% - 40px)/calc(120% + 1.2em) serif" should set the property value -Fail e.style['font'] = "normal small-caps extra-expanded lighter xx-small sans-serif" should set the property value +Pass e.style['font'] = "normal small-caps extra-expanded lighter xx-small sans-serif" should set the property value Pass e.style['font'] = "normal 100 medium/normal cursive" should set the property value Pass e.style['font'] = "normal 900 normal xx-large/1.2 fantasy" should set the property value Pass e.style['font'] = "normal bold normal normal larger/calc(120% + 1.2em) monospace" should set the property value Pass e.style['font'] = "normal bolder normal italic smaller Menu" should set the property value -Fail e.style['font'] = "normal lighter normal small-caps 10px/normal \"FB Armada\"" should set the property value +Pass e.style['font'] = "normal lighter normal small-caps 10px/normal \"FB Armada\"" should set the property value Pass e.style['font'] = "normal 100 normal ultra-expanded 20%/1.2 serif" should set the property value Pass e.style['font'] = "normal 900 oblique calc(30% - 40px)/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "normal bold italic normal xx-small cursive" should set the property value Pass e.style['font'] = "normal bolder oblique small-caps medium/normal fantasy" should set the property value -Fail e.style['font'] = "normal lighter italic ultra-condensed xx-large/1.2 monospace" should set the property value +Pass e.style['font'] = "normal lighter italic ultra-condensed xx-large/1.2 monospace" should set the property value Pass e.style['font'] = "normal 100 small-caps larger/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "normal 900 small-caps normal smaller \"FB Armada\"" should set the property value Pass e.style['font'] = "normal bold small-caps oblique 10px/normal serif" should set the property value Pass e.style['font'] = "normal bolder small-caps extra-condensed 20%/1.2 sans-serif" should set the property value -Fail e.style['font'] = "normal lighter condensed calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value +Pass e.style['font'] = "normal lighter condensed calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value Pass e.style['font'] = "normal 100 semi-condensed normal xx-small fantasy" should set the property value Pass e.style['font'] = "normal 900 semi-expanded italic medium/normal monospace" should set the property value Pass e.style['font'] = "normal bold expanded small-caps xx-large/1.2 Menu" should set the property value @@ -102,7 +101,7 @@ Pass e.style['font'] = "normal semi-condensed normal bolder xx-small monospace" Pass e.style['font'] = "normal semi-expanded italic medium/normal Menu" should set the property value Pass e.style['font'] = "normal expanded oblique normal xx-large/1.2 \"FB Armada\"" should set the property value Pass e.style['font'] = "normal extra-expanded italic small-caps larger/calc(120% + 1.2em) serif" should set the property value -Fail e.style['font'] = "normal ultra-expanded oblique lighter smaller sans-serif" should set the property value +Pass e.style['font'] = "normal ultra-expanded oblique lighter smaller sans-serif" should set the property value Pass e.style['font'] = "normal ultra-condensed small-caps 10px/normal cursive" should set the property value Pass e.style['font'] = "normal extra-condensed small-caps normal 20%/1.2 fantasy" should set the property value Pass e.style['font'] = "normal condensed small-caps italic calc(30% - 40px)/calc(120% + 1.2em) monospace" should set the property value @@ -110,7 +109,7 @@ Pass e.style['font'] = "normal semi-condensed small-caps 100 xx-small Menu" shou Pass e.style['font'] = "normal semi-expanded 900 medium/normal \"FB Armada\"" should set the property value Pass e.style['font'] = "normal expanded bold normal xx-large/1.2 serif" should set the property value Pass e.style['font'] = "normal extra-expanded bolder oblique larger/calc(120% + 1.2em) sans-serif" should set the property value -Fail e.style['font'] = "normal ultra-expanded lighter small-caps smaller cursive" should set the property value +Pass e.style['font'] = "normal ultra-expanded lighter small-caps smaller cursive" should set the property value Pass e.style['font'] = "italic 10px/normal fantasy" should set the property value Pass e.style['font'] = "oblique normal 20%/1.2 monospace" should set the property value Pass e.style['font'] = "italic normal normal calc(30% - 40px)/calc(120% + 1.2em) Menu" should set the property value @@ -124,7 +123,7 @@ Pass e.style['font'] = "oblique normal small-caps 900 20%/1.2 Menu" should set t Pass e.style['font'] = "italic normal small-caps extra-condensed calc(30% - 40px)/calc(120% + 1.2em) \"FB Armada\"" should set the property value Pass e.style['font'] = "oblique normal bold xx-small serif" should set the property value Pass e.style['font'] = "italic normal bolder normal medium/normal sans-serif" should set the property value -Fail e.style['font'] = "oblique normal lighter small-caps xx-large/1.2 cursive" should set the property value +Pass e.style['font'] = "oblique normal lighter small-caps xx-large/1.2 cursive" should set the property value Pass e.style['font'] = "italic normal 100 condensed larger/calc(120% + 1.2em) fantasy" should set the property value Pass e.style['font'] = "oblique normal semi-condensed smaller monospace" should set the property value Pass e.style['font'] = "italic normal semi-expanded normal 10px/normal Menu" should set the property value @@ -136,19 +135,19 @@ Pass e.style['font'] = "oblique small-caps normal normal xx-large/1.2 fantasy" s Pass e.style['font'] = "italic small-caps normal bold larger/calc(120% + 1.2em) monospace" should set the property value Pass e.style['font'] = "oblique small-caps normal ultra-expanded smaller Menu" should set the property value Pass e.style['font'] = "italic small-caps bolder 10px/normal \"FB Armada\"" should set the property value -Fail e.style['font'] = "oblique small-caps lighter normal 20%/1.2 serif" should set the property value +Pass e.style['font'] = "oblique small-caps lighter normal 20%/1.2 serif" should set the property value Pass e.style['font'] = "italic small-caps 100 ultra-condensed calc(30% - 40px)/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "oblique small-caps extra-condensed xx-small cursive" should set the property value Pass e.style['font'] = "italic small-caps condensed normal medium/normal fantasy" should set the property value Pass e.style['font'] = "oblique small-caps semi-condensed 900 xx-large/1.2 monospace" should set the property value Pass e.style['font'] = "italic bold larger/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "oblique bolder normal smaller \"FB Armada\"" should set the property value -Fail e.style['font'] = "italic lighter normal normal 10px/normal serif" should set the property value +Pass e.style['font'] = "italic lighter normal normal 10px/normal serif" should set the property value Pass e.style['font'] = "oblique 100 normal small-caps 20%/1.2 sans-serif" should set the property value Pass e.style['font'] = "italic 900 normal semi-expanded calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value Pass e.style['font'] = "oblique bold small-caps xx-small fantasy" should set the property value Pass e.style['font'] = "italic bolder small-caps normal medium/normal monospace" should set the property value -Fail e.style['font'] = "oblique lighter small-caps expanded xx-large/1.2 Menu" should set the property value +Pass e.style['font'] = "oblique lighter small-caps expanded xx-large/1.2 Menu" should set the property value Pass e.style['font'] = "italic 100 extra-expanded larger/calc(120% + 1.2em) \"FB Armada\"" should set the property value Pass e.style['font'] = "oblique 900 ultra-expanded normal smaller serif" should set the property value Pass e.style['font'] = "italic bold ultra-condensed small-caps 10px/normal sans-serif" should set the property value @@ -159,7 +158,7 @@ Pass e.style['font'] = "italic semi-expanded normal small-caps medium/normal Men Pass e.style['font'] = "oblique expanded normal bolder xx-large/1.2 \"FB Armada\"" should set the property value Pass e.style['font'] = "italic extra-expanded small-caps larger/calc(120% + 1.2em) serif" should set the property value Pass e.style['font'] = "oblique ultra-expanded small-caps normal smaller sans-serif" should set the property value -Fail e.style['font'] = "italic ultra-condensed small-caps lighter 10px/normal cursive" should set the property value +Pass e.style['font'] = "italic ultra-condensed small-caps lighter 10px/normal cursive" should set the property value Pass e.style['font'] = "oblique extra-condensed 100 20%/1.2 fantasy" should set the property value Pass e.style['font'] = "italic condensed 900 normal calc(30% - 40px)/calc(120% + 1.2em) monospace" should set the property value Pass e.style['font'] = "oblique semi-condensed bold small-caps xx-small Menu" should set the property value @@ -172,7 +171,7 @@ Pass e.style['font'] = "small-caps normal normal bolder 20%/1.2 monospace" shoul Pass e.style['font'] = "small-caps normal normal semi-expanded calc(30% - 40px)/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "small-caps normal oblique xx-small \"FB Armada\"" should set the property value Pass e.style['font'] = "small-caps normal italic normal medium/normal serif" should set the property value -Fail e.style['font'] = "small-caps normal oblique lighter xx-large/1.2 sans-serif" should set the property value +Pass e.style['font'] = "small-caps normal oblique lighter xx-large/1.2 sans-serif" should set the property value Pass e.style['font'] = "small-caps normal italic expanded larger/calc(120% + 1.2em) cursive" should set the property value Pass e.style['font'] = "small-caps normal 100 smaller fantasy" should set the property value Pass e.style['font'] = "small-caps normal 900 normal 10px/normal monospace" should set the property value @@ -181,7 +180,7 @@ Pass e.style['font'] = "small-caps normal bolder extra-expanded calc(30% - 40px) Pass e.style['font'] = "small-caps normal ultra-expanded xx-small serif" should set the property value Pass e.style['font'] = "small-caps normal ultra-condensed normal medium/normal sans-serif" should set the property value Pass e.style['font'] = "small-caps normal extra-condensed italic xx-large/1.2 cursive" should set the property value -Fail e.style['font'] = "small-caps normal condensed lighter larger/calc(120% + 1.2em) fantasy" should set the property value +Pass e.style['font'] = "small-caps normal condensed lighter larger/calc(120% + 1.2em) fantasy" should set the property value Pass e.style['font'] = "small-caps oblique smaller monospace" should set the property value Pass e.style['font'] = "small-caps italic normal 10px/normal Menu" should set the property value Pass e.style['font'] = "small-caps oblique normal normal 20%/1.2 \"FB Armada\"" should set the property value @@ -192,17 +191,17 @@ Pass e.style['font'] = "small-caps oblique bold normal xx-large/1.2 fantasy" sho Pass e.style['font'] = "small-caps italic bolder semi-expanded larger/calc(120% + 1.2em) monospace" should set the property value Pass e.style['font'] = "small-caps oblique expanded smaller Menu" should set the property value Pass e.style['font'] = "small-caps italic extra-expanded normal 10px/normal \"FB Armada\"" should set the property value -Fail e.style['font'] = "small-caps oblique ultra-expanded lighter 20%/1.2 serif" should set the property value +Pass e.style['font'] = "small-caps oblique ultra-expanded lighter 20%/1.2 serif" should set the property value Pass e.style['font'] = "small-caps 100 calc(30% - 40px)/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "small-caps 900 normal xx-small cursive" should set the property value Pass e.style['font'] = "small-caps bold normal normal medium/normal fantasy" should set the property value Pass e.style['font'] = "small-caps bolder normal italic xx-large/1.2 monospace" should set the property value -Fail e.style['font'] = "small-caps lighter normal ultra-condensed larger/calc(120% + 1.2em) Menu" should set the property value +Pass e.style['font'] = "small-caps lighter normal ultra-condensed larger/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "small-caps 100 oblique smaller \"FB Armada\"" should set the property value Pass e.style['font'] = "small-caps 900 italic normal 10px/normal serif" should set the property value Pass e.style['font'] = "small-caps bold oblique extra-condensed 20%/1.2 sans-serif" should set the property value Pass e.style['font'] = "small-caps bolder condensed calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value -Fail e.style['font'] = "small-caps lighter semi-condensed normal xx-small fantasy" should set the property value +Pass e.style['font'] = "small-caps lighter semi-condensed normal xx-small fantasy" should set the property value Pass e.style['font'] = "small-caps 100 semi-expanded italic medium/normal monospace" should set the property value Pass e.style['font'] = "small-caps expanded xx-large/1.2 Menu" should set the property value Pass e.style['font'] = "small-caps extra-expanded normal larger/calc(120% + 1.2em) \"FB Armada\"" should set the property value @@ -213,57 +212,57 @@ Pass e.style['font'] = "small-caps condensed italic calc(30% - 40px)/calc(120% + Pass e.style['font'] = "small-caps semi-condensed oblique normal xx-small monospace" should set the property value Pass e.style['font'] = "small-caps semi-expanded italic bold medium/normal Menu" should set the property value Pass e.style['font'] = "small-caps expanded bolder xx-large/1.2 \"FB Armada\"" should set the property value -Fail e.style['font'] = "small-caps extra-expanded lighter normal larger/calc(120% + 1.2em) serif" should set the property value +Pass e.style['font'] = "small-caps extra-expanded lighter normal larger/calc(120% + 1.2em) serif" should set the property value Pass e.style['font'] = "small-caps ultra-expanded 100 oblique smaller sans-serif" should set the property value Pass e.style['font'] = "900 10px/normal cursive" should set the property value Pass e.style['font'] = "bold normal 20%/1.2 fantasy" should set the property value Pass e.style['font'] = "bolder normal normal calc(30% - 40px)/calc(120% + 1.2em) monospace" should set the property value -Fail e.style['font'] = "lighter normal normal normal xx-small Menu" should set the property value +Pass e.style['font'] = "lighter normal normal normal xx-small Menu" should set the property value Pass e.style['font'] = "100 normal normal italic medium/normal \"FB Armada\"" should set the property value Pass e.style['font'] = "900 normal normal small-caps xx-large/1.2 serif" should set the property value Pass e.style['font'] = "bold normal normal ultra-condensed larger/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "bolder normal oblique smaller cursive" should set the property value -Fail e.style['font'] = "lighter normal italic normal 10px/normal fantasy" should set the property value +Pass e.style['font'] = "lighter normal italic normal 10px/normal fantasy" should set the property value Pass e.style['font'] = "100 normal oblique small-caps 20%/1.2 monospace" should set the property value Pass e.style['font'] = "900 normal italic extra-condensed calc(30% - 40px)/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "bold normal small-caps xx-small \"FB Armada\"" should set the property value Pass e.style['font'] = "bolder normal small-caps normal medium/normal serif" should set the property value -Fail e.style['font'] = "lighter normal small-caps oblique xx-large/1.2 sans-serif" should set the property value +Pass e.style['font'] = "lighter normal small-caps oblique xx-large/1.2 sans-serif" should set the property value Pass e.style['font'] = "100 normal small-caps condensed larger/calc(120% + 1.2em) cursive" should set the property value Pass e.style['font'] = "900 normal semi-condensed smaller fantasy" should set the property value Pass e.style['font'] = "bold normal semi-expanded normal 10px/normal monospace" should set the property value Pass e.style['font'] = "bolder normal expanded italic 20%/1.2 Menu" should set the property value -Fail e.style['font'] = "lighter normal extra-expanded small-caps calc(30% - 40px)/calc(120% + 1.2em) \"FB Armada\"" should set the property value +Pass e.style['font'] = "lighter normal extra-expanded small-caps calc(30% - 40px)/calc(120% + 1.2em) \"FB Armada\"" should set the property value Pass e.style['font'] = "100 oblique xx-small serif" should set the property value Pass e.style['font'] = "900 italic normal medium/normal sans-serif" should set the property value Pass e.style['font'] = "bold oblique normal normal xx-large/1.2 cursive" should set the property value Pass e.style['font'] = "bolder italic normal small-caps larger/calc(120% + 1.2em) fantasy" should set the property value -Fail e.style['font'] = "lighter oblique normal ultra-expanded smaller monospace" should set the property value +Pass e.style['font'] = "lighter oblique normal ultra-expanded smaller monospace" should set the property value Pass e.style['font'] = "100 italic small-caps 10px/normal Menu" should set the property value Pass e.style['font'] = "900 oblique small-caps normal 20%/1.2 \"FB Armada\"" should set the property value Pass e.style['font'] = "bold italic small-caps ultra-condensed calc(30% - 40px)/calc(120% + 1.2em) serif" should set the property value Pass e.style['font'] = "bolder oblique extra-condensed xx-small sans-serif" should set the property value -Fail e.style['font'] = "lighter italic condensed normal medium/normal cursive" should set the property value +Pass e.style['font'] = "lighter italic condensed normal medium/normal cursive" should set the property value Pass e.style['font'] = "100 oblique semi-condensed small-caps xx-large/1.2 fantasy" should set the property value Pass e.style['font'] = "900 small-caps larger/calc(120% + 1.2em) monospace" should set the property value Pass e.style['font'] = "bold small-caps normal smaller Menu" should set the property value Pass e.style['font'] = "bolder small-caps normal normal 10px/normal \"FB Armada\"" should set the property value -Fail e.style['font'] = "lighter small-caps normal italic 20%/1.2 serif" should set the property value +Pass e.style['font'] = "lighter small-caps normal italic 20%/1.2 serif" should set the property value Pass e.style['font'] = "100 small-caps normal semi-expanded calc(30% - 40px)/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "900 small-caps oblique xx-small cursive" should set the property value Pass e.style['font'] = "bold small-caps italic normal medium/normal fantasy" should set the property value Pass e.style['font'] = "bolder small-caps oblique expanded xx-large/1.2 monospace" should set the property value -Fail e.style['font'] = "lighter small-caps extra-expanded larger/calc(120% + 1.2em) Menu" should set the property value +Pass e.style['font'] = "lighter small-caps extra-expanded larger/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "100 small-caps ultra-expanded normal smaller \"FB Armada\"" should set the property value Pass e.style['font'] = "900 small-caps ultra-condensed italic 10px/normal serif" should set the property value Pass e.style['font'] = "bold extra-condensed 20%/1.2 sans-serif" should set the property value Pass e.style['font'] = "bolder condensed normal calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value -Fail e.style['font'] = "lighter semi-condensed normal normal xx-small fantasy" should set the property value +Pass e.style['font'] = "lighter semi-condensed normal normal xx-small fantasy" should set the property value Pass e.style['font'] = "100 semi-expanded normal oblique medium/normal monospace" should set the property value Pass e.style['font'] = "900 expanded normal small-caps xx-large/1.2 Menu" should set the property value Pass e.style['font'] = "bold extra-expanded italic larger/calc(120% + 1.2em) \"FB Armada\"" should set the property value Pass e.style['font'] = "bolder ultra-expanded oblique normal smaller serif" should set the property value -Fail e.style['font'] = "lighter ultra-condensed italic small-caps 10px/normal sans-serif" should set the property value +Pass e.style['font'] = "lighter ultra-condensed italic small-caps 10px/normal sans-serif" should set the property value Pass e.style['font'] = "100 extra-condensed small-caps 20%/1.2 cursive" should set the property value Pass e.style['font'] = "900 condensed small-caps normal calc(30% - 40px)/calc(120% + 1.2em) fantasy" should set the property value Pass e.style['font'] = "bold semi-condensed small-caps oblique xx-small monospace" should set the property value @@ -277,7 +276,7 @@ Pass e.style['font'] = "condensed normal normal bolder calc(30% - 40px)/calc(120 Pass e.style['font'] = "semi-condensed normal oblique xx-small Menu" should set the property value Pass e.style['font'] = "semi-expanded normal italic normal medium/normal \"FB Armada\"" should set the property value Pass e.style['font'] = "expanded normal oblique small-caps xx-large/1.2 serif" should set the property value -Fail e.style['font'] = "extra-expanded normal italic lighter larger/calc(120% + 1.2em) sans-serif" should set the property value +Pass e.style['font'] = "extra-expanded normal italic lighter larger/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "ultra-expanded normal small-caps smaller cursive" should set the property value Pass e.style['font'] = "ultra-condensed normal small-caps normal 10px/normal fantasy" should set the property value Pass e.style['font'] = "extra-condensed normal small-caps oblique 20%/1.2 monospace" should set the property value @@ -285,7 +284,7 @@ Pass e.style['font'] = "condensed normal small-caps 100 calc(30% - 40px)/calc(12 Pass e.style['font'] = "semi-condensed normal 900 xx-small \"FB Armada\"" should set the property value Pass e.style['font'] = "semi-expanded normal bold normal medium/normal serif" should set the property value Pass e.style['font'] = "expanded normal bolder italic xx-large/1.2 sans-serif" should set the property value -Fail e.style['font'] = "extra-expanded normal lighter small-caps larger/calc(120% + 1.2em) cursive" should set the property value +Pass e.style['font'] = "extra-expanded normal lighter small-caps larger/calc(120% + 1.2em) cursive" should set the property value Pass e.style['font'] = "ultra-expanded oblique smaller fantasy" should set the property value Pass e.style['font'] = "ultra-condensed italic normal 10px/normal monospace" should set the property value Pass e.style['font'] = "extra-condensed oblique normal normal 20%/1.2 Menu" should set the property value @@ -296,7 +295,7 @@ Pass e.style['font'] = "expanded oblique small-caps normal xx-large/1.2 cursive" Pass e.style['font'] = "extra-expanded italic small-caps 900 larger/calc(120% + 1.2em) fantasy" should set the property value Pass e.style['font'] = "ultra-expanded oblique bold smaller monospace" should set the property value Pass e.style['font'] = "ultra-condensed italic bolder normal 10px/normal Menu" should set the property value -Fail e.style['font'] = "extra-condensed oblique lighter small-caps 20%/1.2 \"FB Armada\"" should set the property value +Pass e.style['font'] = "extra-condensed oblique lighter small-caps 20%/1.2 \"FB Armada\"" should set the property value Pass e.style['font'] = "condensed small-caps calc(30% - 40px)/calc(120% + 1.2em) serif" should set the property value Pass e.style['font'] = "semi-condensed small-caps normal xx-small sans-serif" should set the property value Pass e.style['font'] = "semi-expanded small-caps normal normal medium/normal cursive" should set the property value @@ -307,15 +306,15 @@ Pass e.style['font'] = "ultra-condensed small-caps italic normal 10px/normal \"F Pass e.style['font'] = "extra-condensed small-caps oblique 900 20%/1.2 serif" should set the property value Pass e.style['font'] = "condensed small-caps bold calc(30% - 40px)/calc(120% + 1.2em) sans-serif" should set the property value Pass e.style['font'] = "semi-condensed small-caps bolder normal xx-small cursive" should set the property value -Fail e.style['font'] = "semi-expanded small-caps lighter italic medium/normal fantasy" should set the property value +Pass e.style['font'] = "semi-expanded small-caps lighter italic medium/normal fantasy" should set the property value Pass e.style['font'] = "expanded 100 xx-large/1.2 monospace" should set the property value Pass e.style['font'] = "extra-expanded 900 normal larger/calc(120% + 1.2em) Menu" should set the property value Pass e.style['font'] = "ultra-expanded bold normal normal smaller \"FB Armada\"" should set the property value Pass e.style['font'] = "ultra-condensed bolder normal oblique 10px/normal serif" should set the property value -Fail e.style['font'] = "extra-condensed lighter normal small-caps 20%/1.2 sans-serif" should set the property value +Pass e.style['font'] = "extra-condensed lighter normal small-caps 20%/1.2 sans-serif" should set the property value Pass e.style['font'] = "condensed 100 italic calc(30% - 40px)/calc(120% + 1.2em) cursive" should set the property value Pass e.style['font'] = "semi-condensed 900 oblique normal xx-small fantasy" should set the property value Pass e.style['font'] = "semi-expanded bold italic small-caps medium/normal monospace" should set the property value Pass e.style['font'] = "expanded bolder small-caps xx-large/1.2 Menu" should set the property value -Fail e.style['font'] = "extra-expanded lighter small-caps normal larger/calc(120% + 1.2em) \"FB Armada\"" should set the property value +Pass e.style['font'] = "extra-expanded lighter small-caps normal larger/calc(120% + 1.2em) \"FB Armada\"" should set the property value Pass e.style['font'] = "ultra-expanded 100 small-caps oblique smaller serif" should set the property value \ No newline at end of file