Support calc() in font-feature-settings

font-feature-settings accepts an integer, but the code for parsing that
integer did not check for calc() values. Update the code to accept
calculated integers.

Bug: 397061
Change-Id: I33ed1538f8148257f22a3e67cbd3478e523a1ff5
Reviewed-on: https://chromium-review.googlesource.com/888161
Reviewed-by: Eric Willigers <ericwilligers@chromium.org>
Commit-Queue: Chris Nardi <cnardi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532158}
diff --git a/css/css-values/calc-in-font-feature-settings.html b/css/css-values/calc-in-font-feature-settings.html
new file mode 100644
index 0000000..0ce8d7e
--- /dev/null
+++ b/css/css-values/calc-in-font-feature-settings.html
@@ -0,0 +1,22 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Test: calc() function in font-feature-settings</title>
+<link rel="author" title="Chris Nardi" href="mailto:cnardi@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-values/#funcdef-calc">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+    #test {
+        font-feature-settings: "vert" calc(2);
+    }
+</style>
+<div id="test"></div>
+<script>
+    const div = document.querySelector("#test");
+    // Chrome serializes font-feature-settings with single quotes vs. double quotes
+    // in other browsers, but that's not the issue being tested.
+    const expected = ["'vert' 2", "\"vert\" 2"];
+    test(function() {
+        assert_in_array(getComputedStyle(div).fontFeatureSettings, expected);
+    }, "calc() in font-feature-settings");
+</script>
\ No newline at end of file