This test checks that we properly enforce the maximum number of grid tracks in different situations.


PASS Test that we don't get more than kGridMaxTracks repetitions even on very wide grids (normal tracks clamped).
PASS Test that we don't get more than kGridMaxTracks repetitions even on very tall grids (normal tracks clamped).
PASS Test that we don't get more than kGridMaxTracks repetitions even on very wide grids (auto repeat tracks clamped).
PASS Test that we don't get more than kGridMaxTracks repetitions even on very tall grids (auto repeat tracks clamped).
PASS Test that we don't get more than kGridMaxTracks repetitions even on very wide grids with gaps.
PASS Test that we don't get more than kGridMaxTracks repetitions even on very tall grids with gaps.
PASS Test that we don't get more than kGridMaxTracks repetitions even on very wide grids with gaps and min-width.
PASS Test that we don't get more than kGridMaxTracks repetitions even on very tall grids with gaps and min-height.
PASS Test that we don't crash when there are exactly kGridMaxTracks auto repeat rows on very tall grids.
PASS Test that we don't crash when there are exactly kGridMaxTracks auto repeat columns on very wide grids.
PASS Test that we don't crash when there are exactly kGridMaxTracks (normal and auto-repeat) rows on very tall grids.
PASS Test that we don't crash when there are exactly kGridMaxTracks (normal and auto-repeat) columns on very wide grids.
PASS Test that we don't crash when there are exactly kGridMaxTracks non auto-repeat rows on very tall grids.
PASS Test that we don't crash when there are exactly kGridMaxTracks non auto-repeat columns on very wide grids.
PASS Test that we don't crash when there are exactly kGridMaxTracks non auto-repeat rows on very tall grids with enough room for auto repetitions.
PASS Test that we don't crash when there are exactly kGridMaxTracks non auto-repeat columns on very wide grids with enough room for auto repetitions.
PASS Test that we don't crash when there are more than kGridMaxTracks non auto-repeat rows on very tall grids.
PASS Test that we don't crash when there are more than kGridMaxTracks non auto-repeat columns on very wide grids.

