Skip to content

Commit dba0a59

Browse files
committed
Add tests for @document and @-moz-document
1 parent 7970665 commit dba0a59

File tree

2 files changed

+164
-0
lines changed

2 files changed

+164
-0
lines changed

tests/css/CSSParserTests.htm

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1446,6 +1446,88 @@ <h1>CSS Parser Tests</h1>
14461446
assert.isTrue(true); //just don't want an error
14471447
},
14481448

1449+
testDocumentUrl: function(){
1450+
var parser = new Parser({ strict: true});
1451+
var result = parser.parse("@document url(http://www.w3.org/) {}");
1452+
assert.isTrue(true); //just don't want an error
1453+
},
1454+
1455+
testDocumentUrlPrefix: function(){
1456+
var parser = new Parser({ strict: true});
1457+
var result = parser.parse("@document url-prefix(http://www.w3.org/) {}");
1458+
assert.isTrue(true); //just don't want an error
1459+
},
1460+
1461+
testDocumentDomain: function(){
1462+
var parser = new Parser({ strict: true});
1463+
var result = parser.parse("@document domain(w3.org) {}");
1464+
assert.isTrue(true); //just don't want an error
1465+
},
1466+
1467+
testDocumentRegexp: function(){
1468+
var parser = new Parser({ strict: true});
1469+
var result = parser.parse("@document regexp('https:.*') {}");
1470+
assert.isTrue(true); //just don't want an error
1471+
},
1472+
1473+
testDocumentMultipleFunctions: function(){
1474+
var parser = new Parser({ strict: true});
1475+
var result = parser.parse("@document url-prefix(http://www.w3.org/), domain(w3.org) {}");
1476+
assert.isTrue(true); //just don't want an error
1477+
},
1478+
1479+
testMozDocument: function(){
1480+
var parser = new Parser({ strict: true});
1481+
var result = parser.parse("@-moz-document url-prefix() {}");
1482+
assert.isTrue(true); //just don't want an error
1483+
},
1484+
1485+
testDocumentWithPage: function(){
1486+
var parser = new Parser({ strict: true});
1487+
var result = parser.parse("@document url-prefix() { @page {} }");
1488+
assert.isTrue(true); //just don't want an error
1489+
},
1490+
1491+
testDocumentWithMedia: function(){
1492+
var parser = new Parser({ strict: true});
1493+
var result = parser.parse("@document url-prefix() { @media {} }");
1494+
assert.isTrue(true); //just don't want an error
1495+
},
1496+
1497+
testDocumentWithFontFace: function(){
1498+
var parser = new Parser({ strict: true});
1499+
var result = parser.parse("@document url-prefix() { @font-face {} }");
1500+
assert.isTrue(true); //just don't want an error
1501+
},
1502+
1503+
testDocumentWithViewport: function(){
1504+
var parser = new Parser({ strict: true});
1505+
var result = parser.parse("@document url-prefix() { @viewport {} }");
1506+
assert.isTrue(true); //just don't want an error
1507+
},
1508+
1509+
testDocumentEventFires: function(){
1510+
var parser = new Parser({ strict:true}),
1511+
calledStart = false,
1512+
calledEnd = false;
1513+
1514+
parser.addListener("startdocument", function(event) {
1515+
assert.areEqual(1, event.line, "Line should be 1");
1516+
assert.areEqual(1, event.col, "Column should be 1");
1517+
calledStart = true;
1518+
});
1519+
1520+
parser.addListener("enddocument", function(event) {
1521+
assert.areEqual(1, event.line, "Line should be 1");
1522+
assert.areEqual(1, event.col, "Column should be 1");
1523+
calledEnd = true;
1524+
});
1525+
1526+
var result = parser.parse("@document url-prefix() {}");
1527+
assert.isTrue(calledStart); //just don't want an error
1528+
assert.isTrue(calledEnd); //just don't want an error
1529+
},
1530+
14491531
testClassesWithEscapes: function(){
14501532
var parser = new Parser({strict:true});
14511533
var result = parser.parseSelector("#\\31 a2b3c");

tests/css/Parser.js

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1574,6 +1574,88 @@
15741574
Assert.isTrue(calledEnd); //just don't want an error
15751575
},
15761576

1577+
testDocumentUrl: function(){
1578+
var parser = new Parser({ strict: true});
1579+
var result = parser.parse("@document url(http://www.w3.org/) {}");
1580+
Assert.isTrue(true); //just don't want an error
1581+
},
1582+
1583+
testDocumentUrlPrefix: function(){
1584+
var parser = new Parser({ strict: true});
1585+
var result = parser.parse("@document url-prefix(http://www.w3.org/) {}");
1586+
Assert.isTrue(true); //just don't want an error
1587+
},
1588+
1589+
testDocumentDomain: function(){
1590+
var parser = new Parser({ strict: true});
1591+
var result = parser.parse("@document domain(w3.org) {}");
1592+
Assert.isTrue(true); //just don't want an error
1593+
},
1594+
1595+
testDocumentRegexp: function(){
1596+
var parser = new Parser({ strict: true});
1597+
var result = parser.parse("@document regexp('https:.*') {}");
1598+
Assert.isTrue(true); //just don't want an error
1599+
},
1600+
1601+
testDocumentMultipleFunctions: function(){
1602+
var parser = new Parser({ strict: true});
1603+
var result = parser.parse("@document url-prefix(http://www.w3.org/), domain(w3.org) {}");
1604+
Assert.isTrue(true); //just don't want an error
1605+
},
1606+
1607+
testMozDocument: function(){
1608+
var parser = new Parser({ strict: true});
1609+
var result = parser.parse("@-moz-document url-prefix() {}");
1610+
Assert.isTrue(true); //just don't want an error
1611+
},
1612+
1613+
testDocumentWithPage: function(){
1614+
var parser = new Parser({ strict: true});
1615+
var result = parser.parse("@document url-prefix() { @page {} }");
1616+
Assert.isTrue(true); //just don't want an error
1617+
},
1618+
1619+
testDocumentWithMedia: function(){
1620+
var parser = new Parser({ strict: true});
1621+
var result = parser.parse("@document url-prefix() { @media {} }");
1622+
Assert.isTrue(true); //just don't want an error
1623+
},
1624+
1625+
testDocumentWithFontFace: function(){
1626+
var parser = new Parser({ strict: true});
1627+
var result = parser.parse("@document url-prefix() { @font-face {} }");
1628+
Assert.isTrue(true); //just don't want an error
1629+
},
1630+
1631+
testDocumentWithViewport: function(){
1632+
var parser = new Parser({ strict: true});
1633+
var result = parser.parse("@document url-prefix() { @viewport {} }");
1634+
Assert.isTrue(true); //just don't want an error
1635+
},
1636+
1637+
testDocumentEventFires: function(){
1638+
var parser = new Parser({ strict:true}),
1639+
calledStart = false,
1640+
calledEnd = false;
1641+
1642+
parser.addListener("startdocument", function(event) {
1643+
Assert.areEqual(1, event.line, "Line should be 1");
1644+
Assert.areEqual(1, event.col, "Column should be 1");
1645+
calledStart = true;
1646+
});
1647+
1648+
parser.addListener("enddocument", function(event) {
1649+
Assert.areEqual(1, event.line, "Line should be 1");
1650+
Assert.areEqual(1, event.col, "Column should be 1");
1651+
calledEnd = true;
1652+
});
1653+
1654+
var result = parser.parse("@document url-prefix() {}");
1655+
Assert.isTrue(calledStart); //just don't want an error
1656+
Assert.isTrue(calledEnd); //just don't want an error
1657+
},
1658+
15771659
testClassesWithEscapes: function(){
15781660
var parser = new Parser({strict:true});
15791661
var result = parser.parseSelector("#\\31 a2b3c");

0 commit comments

Comments
 (0)