[css-grid] Fix behavior of flexible track breadths

This patch is fixing 2 issues that are interrelated:

* Flex sizes are invalid on the min slot of minmax().

  The syntax has been recently updated on the spec:
    <track-size> =
      <track-breadth> |
      minmax( <inflexible-breadth> , <track-breadth> )

  To fix this, the patch modifies consumeGridBreadth()
  in CSSPropertyParser, adding a new type of restriction
  "InflexibleSizeOnly".

* Flex sizes outside minmax() behave as auto minimum.

  Flex sizes outside minmax() were previously behaving like
  minimum and maximum (e.g. 1fr => minmax(1fr, 1fr)).
  However the spec changed and now this would be invalid,
  so they should behave like auto minimum (e.g. minmax(auto, 1fr)).

  To achieve this the patch adds a new condition in
  LayoutGrid::gridTrackSize();

The patch includes new test cases checking specifically these 2 issues.
In addition several tests results have been updated to reflect
the new behavior. Also, some cases that are now invalid and
were not testing anything new have been removed.

BUG=611407,611410
TEST=fast/css-grid-layout/flex-content-resolution-columns.html
TEST=fast/css-grid-layout/flex-content-resolution-rows.html
TEST=fast/css-grid-layout/grid-columns-rows-get-set.html

Review-Url: https://codereview.chromium.org/1979603002
Cr-Commit-Position: refs/heads/master@{#393846}
15 files changed