@@ -527,6 +527,139 @@ public void CssGridAreaSingleValueLegal()
527527 Assert . AreEqual ( "2 / auto / auto / auto" , property . Value ) ;
528528 }
529529
530+ [ Test ]
531+ public void CssGridAreaTextValueLegal1 ( )
532+ {
533+ var source = "#nav-header {grid-area: aaa; }" ;
534+ var css = ParseStyleSheet ( source ) ;
535+ var text = css . Rules [ 0 ] . CssText ;
536+
537+ var expected = "#nav-header { grid-area: aaa / aaa / aaa / aaa }" ;
538+ Assert . AreEqual ( expected , text ) ;
539+ }
540+
541+
542+ [ Test ]
543+ public void CssGridAreaTextValueLegal2 ( )
544+ {
545+ var source = "#nav-header {grid-area: aaa / bbb; }" ;
546+ var css = ParseStyleSheet ( source ) ;
547+ var text = css . Rules [ 0 ] . CssText ;
548+
549+ var expected = "#nav-header { grid-area: aaa / bbb / aaa / bbb }" ;
550+ Assert . AreEqual ( expected , text ) ;
551+ }
552+
553+ [ Test ]
554+ public void CssGridAreaTextValueLegal3 ( )
555+ {
556+ var source = "#nav-header {grid-area: 1 / 2; }" ;
557+ var css = ParseStyleSheet ( source ) ;
558+ var text = css . Rules [ 0 ] . CssText ;
559+
560+ var expected = "#nav-header { grid-area: 1 / 2 / auto / auto }" ;
561+ Assert . AreEqual ( expected , text ) ;
562+ }
563+
564+ [ Test ]
565+ public void CssGridAreaTextValueLegal4 ( )
566+ {
567+ var source = "#nav-header {grid-area: aaa / 2; }" ;
568+ var css = ParseStyleSheet ( source ) ;
569+ var text = css . Rules [ 0 ] . CssText ;
570+
571+ var expected = "#nav-header { grid-area: aaa / 2 / aaa / auto }" ;
572+ Assert . AreEqual ( expected , text ) ;
573+ }
574+
575+ [ Test ]
576+ public void CssGridAreaTextValueLegal5 ( )
577+ {
578+ var source = "#nav-header {grid-area: aaa / bbb / ccc; }" ;
579+ var css = ParseStyleSheet ( source ) ;
580+ var text = css . Rules [ 0 ] . CssText ;
581+
582+ var expected = "#nav-header { grid-area: aaa / bbb / ccc / bbb }" ;
583+ Assert . AreEqual ( expected , text ) ;
584+ }
585+
586+ [ Test ]
587+ public void CssGridAreaTextValueLegal6 ( )
588+ {
589+ var source = "#nav-header {grid-area: aaa / bbb / ccc; }" ;
590+ var css = ParseStyleSheet ( source ) ;
591+ var text = css . Rules [ 0 ] . CssText ;
592+
593+ var expected = "#nav-header { grid-area: aaa / bbb / ccc / bbb }" ;
594+ Assert . AreEqual ( expected , text ) ;
595+ }
596+
597+ [ Test ]
598+ public void CssGridAreaTextValueLegal7 ( )
599+ {
600+ var source = "#nav-header {grid-area: 1; }" ;
601+ var css = ParseStyleSheet ( source ) ;
602+ var text = css . Rules [ 0 ] . CssText ;
603+
604+ var expected = "#nav-header { grid-area: 1 / auto / auto / auto }" ;
605+ Assert . AreEqual ( expected , text ) ;
606+ }
607+
608+ [ Test ]
609+ public void CssGridAreaTextValueLegal8 ( )
610+ {
611+ var source = "#nav-header {grid-area: 2 / aaa; }" ;
612+ var css = ParseStyleSheet ( source ) ;
613+ var text = css . Rules [ 0 ] . CssText ;
614+
615+ var expected = "#nav-header { grid-area: 2 / aaa / auto / aaa }" ;
616+ Assert . AreEqual ( expected , text ) ;
617+ }
618+
619+ [ Test ]
620+ public void CssGridAreaTextValueIllegal1 ( )
621+ {
622+ var source = "#nav-header {grid-area: 2a / 3%; }" ;
623+ var css = ParseStyleSheet ( source ) ;
624+ var text = css . Rules [ 0 ] . CssText ;
625+
626+ var expected = "#nav-header { }" ;
627+ Assert . AreEqual ( expected , text ) ;
628+ }
629+
630+ [ Test ]
631+ public void CssGridAreaTextValueIllegal2 ( )
632+ {
633+ var source = "#nav-header {grid-area: 2a; }" ;
634+ var css = ParseStyleSheet ( source ) ;
635+ var text = css . Rules [ 0 ] . CssText ;
636+
637+ var expected = "#nav-header { }" ;
638+ Assert . AreEqual ( expected , text ) ;
639+ }
640+
641+ [ Test ]
642+ public void CssGridAreaTextValueTrim1 ( )
643+ {
644+ var source = "#nav-header {grid-area: 9999999; }" ;
645+ var css = ParseStyleSheet ( source ) ;
646+ var text = css . Rules [ 0 ] . CssText ;
647+
648+ var expected = "#nav-header { grid-area: 10000 / auto / auto / auto }" ;
649+ Assert . AreEqual ( expected , text ) ;
650+ }
651+
652+ [ Test ]
653+ public void CssGridAreaTextValueTrim2 ( )
654+ {
655+ var source = "#nav-header {grid-area: 9999999 / 8888888 }" ;
656+ var css = ParseStyleSheet ( source ) ;
657+ var text = css . Rules [ 0 ] . CssText ;
658+
659+ var expected = "#nav-header { grid-area: 10000 / 10000 / auto / auto }" ;
660+ Assert . AreEqual ( expected , text ) ;
661+ }
662+
530663 [ Test ]
531664 public void CssGridAutoFlowAndRepeatLegal ( )
532665 {
0 commit comments