File tree Expand file tree Collapse file tree 3 files changed +34
-11
lines changed Expand file tree Collapse file tree 3 files changed +34
-11
lines changed Original file line number Diff line number Diff line change @@ -795,17 +795,16 @@ Parser.prototype = function(){
795
795
col : token . startCol
796
796
} ) ;
797
797
798
- while ( true ) {
799
- if ( tokenStream . peek ( ) === Tokens . PAGE_SYM ) {
800
- this . _page ( ) ;
801
- } else if ( tokenStream . peek ( ) === Tokens . FONT_FACE_SYM ) {
802
- this . _font_face ( ) ;
803
- } else if ( tokenStream . peek ( ) === Tokens . VIEWPORT_SYM ) {
804
- this . _viewport ( ) ;
805
- } else if ( tokenStream . peek ( ) === Tokens . MEDIA_SYM ) {
806
- this . _media ( ) ;
807
- } else if ( ! this . _ruleset ( ) ) {
808
- break ;
798
+ var ok = true ;
799
+ while ( ok ) {
800
+ switch ( tokenStream . peek ( ) ) {
801
+ case Tokens . PAGE_SYM : this . _page ( ) ; break ;
802
+ case Tokens . FONT_FACE_SYM : this . _font_face ( ) ; break ;
803
+ case Tokens . VIEWPORT_SYM : this . _viewport ( ) ; break ;
804
+ case Tokens . MEDIA_SYM : this . _media ( ) ; break ;
805
+ case Tokens . KEYFRAMES_SYM : this . _keyframes ( ) ; break ;
806
+ case Tokens . DOCUMENT_SYM : this . _document ( ) ; break ;
807
+ default : ok = ! ! this . _ruleset ( ) ;
809
808
}
810
809
}
811
810
Original file line number Diff line number Diff line change @@ -1632,6 +1632,18 @@ <h1>CSS Parser Tests</h1>
1632
1632
assert . isTrue ( valid ) ;
1633
1633
} ,
1634
1634
1635
+ testDocumentWithKeyframes : function ( ) {
1636
+ var parser = new Parser ( { strict : true } ) ,
1637
+ valid = true ;
1638
+
1639
+ parser . addListener ( "error" , function ( event ) {
1640
+ valid = false ;
1641
+ } ) ;
1642
+
1643
+ var result = parser . parse ( "@document url-prefix() { @keyframes 'diagonal-slide' { from { left: 0; top: 0; } to { left: 100px; top: 100px; } } }" ) ;
1644
+ assert . isTrue ( valid ) ;
1645
+ } ,
1646
+
1635
1647
testDocumentEventFires : function ( ) {
1636
1648
var parser = new Parser ( { strict :true } ) ,
1637
1649
calledStart = false ,
Original file line number Diff line number Diff line change 1808
1808
Assert . isTrue ( valid ) ;
1809
1809
} ,
1810
1810
1811
+ testDocumentWithKeyframes : function ( ) {
1812
+ var parser = new Parser ( { strict : true } ) ,
1813
+ valid = true ;
1814
+
1815
+ parser . addListener ( "error" , function ( event ) {
1816
+ valid = false ;
1817
+ } ) ;
1818
+
1819
+ var result = parser . parse ( "@document url-prefix() { @keyframes 'diagonal-slide' { from { left: 0; top: 0; } to { left: 100px; top: 100px; } } }" ) ;
1820
+ Assert . isTrue ( valid ) ;
1821
+ } ,
1822
+
1811
1823
testDocumentEventFires : function ( ) {
1812
1824
var parser = new Parser ( { strict :true } ) ,
1813
1825
calledStart = false ,
You can’t perform that action at this time.
0 commit comments