Upgrade QUnit to the current master (c532d183664118fc2ca1)

redux
David Majda 13 years ago
parent 98cbd57ead
commit 0e9d58ea96

@ -19,13 +19,15 @@ test("reports missing referenced rules", function() {
]; ];
for (var i = 0; i < grammars.length; i++) { for (var i = 0; i < grammars.length; i++) {
throws( raises(
function() { function() {
var ast = PEG.parser.parse(grammars[i]); var ast = PEG.parser.parse(grammars[i]);
PEG.compiler.checks.missingReferencedRules(ast); PEG.compiler.checks.missingReferencedRules(ast);
}, },
PEG.GrammarError, function(e) {
{ message: "Referenced rule \"missing\" does not exist." } return e instanceof PEG.GrammarError
&& e.message === "Referenced rule \"missing\" does not exist.";
}
); );
} }
}); });
@ -50,13 +52,15 @@ test("reports left recursion", function() {
]; ];
for (var i = 0; i < grammars.length; i++) { for (var i = 0; i < grammars.length; i++) {
throws( raises(
function() { function() {
var ast = PEG.parser.parse(grammars[i]); var ast = PEG.parser.parse(grammars[i]);
PEG.compiler.checks.leftRecursion(ast); PEG.compiler.checks.leftRecursion(ast);
}, },
PEG.GrammarError, function(e) {
{ message: "Left recursion detected for rule \"start\"." } return e instanceof PEG.GrammarError
&& e.message === "Left recursion detected for rule \"start\".";
}
); );
} }
}); });

@ -1,54 +1,29 @@
(function(global) { (function(global) {
global.throws = function(block, exceptionType, exceptionProperties) {
var exception = null;
try {
block();
} catch (e) {
exception = e;
}
ok(
exception !== null,
exception !== null ? "okay: thrown something" : "failed, nothing thrown"
);
if (exception !== null) {
ok(
exception instanceof exceptionType,
exception instanceof exceptionType
? "okay: thrown " + exceptionType.name
: "failed, thrown " + exception.name + " instead of " + exceptionType.name
);
for (var property in exceptionProperties) {
strictEqual(exception[property], exceptionProperties[property]);
}
}
};
global.parses = function(parser, input, expected) { global.parses = function(parser, input, expected) {
deepEqual(parser.parse(input), expected); deepEqual(parser.parse(input), expected);
}; };
global.doesNotParse = function(parser, input) { global.doesNotParse = function(parser, input) {
throws(function() { parser.parse(input); }, parser.SyntaxError); raises(function() { parser.parse(input); }, parser.SyntaxError);
}; };
global.doesNotParseWithMessage = function(parser, input, message) { global.doesNotParseWithMessage = function(parser, input, message) {
throws( raises(
function() { parser.parse(input); }, function() { parser.parse(input); },
parser.SyntaxError, function(e) {
{ message: message } return e instanceof parser.SyntaxError && e.message === message;
}
); );
}; };
global.doesNotParseWithPos = function(parser, input, line, column) { global.doesNotParseWithPos = function(parser, input, line, column) {
var exception = throws( raises(
function() { parser.parse(input); }, function() { parser.parse(input); },
parser.SyntaxError, function(e) {
{ return e instanceof parser.SyntaxError
line: line, && e.line === line
column: column && e.column === column;
} }
); );
}; };

@ -1,119 +1,197 @@
/** Font Family and Sizes */
ol#qunit-tests { #qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult {
font-family:"Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial; font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial;
margin:0; }
padding:0;
list-style-position:inside; #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; }
#qunit-tests { font-size: smaller; }
/** Resets */
#qunit-tests, #qunit-tests ol, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult {
margin: 0;
padding: 0;
}
/** Header */
#qunit-header {
padding: 0.5em 0 0.5em 1em;
color: #8699a4;
background-color: #0d3349;
font-size: 1.5em;
line-height: 1em;
font-weight: normal;
border-radius: 15px 15px 0 0;
-moz-border-radius: 15px 15px 0 0;
-webkit-border-top-right-radius: 15px;
-webkit-border-top-left-radius: 15px;
}
#qunit-header a {
text-decoration: none;
color: #c2ccd1;
}
#qunit-header a:hover,
#qunit-header a:focus {
color: #fff;
}
#qunit-banner {
height: 5px;
}
font-size: smaller; #qunit-testrunner-toolbar {
padding: 0.5em 0 0.5em 2em;
color: #5E740B;
background-color: #eee;
}
#qunit-userAgent {
padding: 0.5em 0 0.5em 2.5em;
background-color: #2b81af;
color: #fff;
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
}
/** Tests: Pass/Fail */
#qunit-tests {
list-style-position: inside;
} }
ol#qunit-tests li{
padding:0.4em 0.5em 0.4em 2.5em; #qunit-tests li {
border-bottom:1px solid #fff; padding: 0.4em 0.5em 0.4em 2.5em;
font-size:small; border-bottom: 1px solid #fff;
list-style-position:inside; list-style-position: inside;
} }
ol#qunit-tests li ol{
#qunit-tests li strong {
cursor: pointer;
}
#qunit-tests ol {
margin-top: 0.5em;
padding: 0.5em;
background-color: #fff;
border-radius: 15px;
-moz-border-radius: 15px;
-webkit-border-radius: 15px;
box-shadow: inset 0px 2px 13px #999; box-shadow: inset 0px 2px 13px #999;
-moz-box-shadow: inset 0px 2px 13px #999; -moz-box-shadow: inset 0px 2px 13px #999;
-webkit-box-shadow: inset 0px 2px 13px #999; -webkit-box-shadow: inset 0px 2px 13px #999;
margin-top:0.5em;
margin-left:0;
padding:0.5em;
background-color:#fff;
border-radius:15px;
-moz-border-radius: 15px;
-webkit-border-radius: 15px;
} }
ol#qunit-tests li li{
border-bottom:none; #qunit-tests table {
margin:0.5em; border-collapse: collapse;
background-color:#fff; margin-top: .2em;
}
#qunit-tests th {
text-align: right;
vertical-align: top;
padding: 0 .5em 0 0;
}
#qunit-tests td {
vertical-align: top;
}
#qunit-tests pre {
margin: 0;
white-space: pre-wrap;
word-wrap: break-word;
}
#qunit-tests del {
background-color: #e0f2be;
color: #374e0c;
text-decoration: none;
}
#qunit-tests ins {
background-color: #ffcaca;
color: #500;
text-decoration: none;
}
/*** Test Counts */
#qunit-tests b.counts { color: black; }
#qunit-tests b.passed { color: #5E740B; }
#qunit-tests b.failed { color: #710909; }
#qunit-tests li li {
margin: 0.5em;
padding: 0.4em 0.5em 0.4em 0.5em;
background-color: #fff;
border-bottom: none;
list-style-position: inside; list-style-position: inside;
padding:0.4em 0.5em 0.4em 0.5em;
}
ol#qunit-tests li li.pass{
border-left:26px solid #C6E746;
background-color:#fff;
color:#5E740B;
}
ol#qunit-tests li li.fail{
border-left:26px solid #EE5757;
background-color:#fff;
color:#710909;
}
ol#qunit-tests li.pass{
background-color:#D2E0E6;
color:#528CE0;
}
ol#qunit-tests li.fail{
background-color:#EE5757;
color:#000;
}
ol#qunit-tests li strong {
cursor:pointer;
}
h1#qunit-header{
background-color:#0d3349;
margin:0;
padding:0.5em 0 0.5em 1em;
color:#fff;
font-family:"Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial;
border-top-right-radius:15px;
border-top-left-radius:15px;
-moz-border-radius-topright:15px;
-moz-border-radius-topleft:15px;
-webkit-border-top-right-radius:15px;
-webkit-border-top-left-radius:15px;
text-shadow: rgba(0, 0, 0, 0.5) 4px 4px 1px;
}
h2#qunit-banner{
font-family:"Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial;
height:5px;
margin:0;
padding:0;
}
h2#qunit-banner.qunit-pass{
background-color:#C6E746;
}
h2#qunit-banner.qunit-fail, #qunit-testrunner-toolbar {
background-color:#EE5757;
} }
#qunit-testrunner-toolbar {
font-family:"Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial; /*** Passing Styles */
padding:0;
/*width:80%;*/ #qunit-tests li li.pass {
padding:0em 0 0.5em 2em; color: #5E740B;
font-size: small; background-color: #fff;
} border-left: 26px solid #C6E746;
h2#qunit-userAgent { }
font-family:"Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial;
background-color:#2b81af; #qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; }
margin:0; #qunit-tests .pass .test-name { color: #366097; }
padding:0;
color:#fff; #qunit-tests .pass .test-actual,
font-size: small; #qunit-tests .pass .test-expected { color: #999999; }
padding:0.5em 0 0.5em 2.5em;
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px; #qunit-banner.qunit-pass { background-color: #C6E746; }
/*** Failing Styles */
#qunit-tests li li.fail {
color: #710909;
background-color: #fff;
border-left: 26px solid #EE5757;
}
#qunit-tests .fail { color: #000000; background-color: #EE5757; }
#qunit-tests .fail .test-name,
#qunit-tests .fail .module-name { color: #000000; }
#qunit-tests .fail .test-actual { color: #EE5757; }
#qunit-tests .fail .test-expected { color: green; }
#qunit-banner.qunit-fail { background-color: #EE5757; }
/** Footer */
#qunit-testresult {
padding: 0.5em 0.5em 0.5em 2.5em;
color: #2b81af;
background-color: #D2E0E6;
border-radius: 0 0 15px 15px;
-moz-border-radius: 0 0 15px 15px;
-webkit-border-bottom-right-radius: 15px;
-webkit-border-bottom-left-radius: 15px;
}
/** Fixture */
#qunit-fixture {
position: absolute;
top: -10000px;
left: -10000px;
} }
p#qunit-testresult{
font-family:"Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial;
margin:0;
font-size: small;
color:#2b81af;
border-bottom-right-radius:15px;
border-bottom-left-radius:15px;
-moz-border-radius-bottomright:15px;
-moz-border-radius-bottomleft:15px;
-webkit-border-bottom-right-radius:15px;
-webkit-border-bottom-left-radius:15px;
background-color:#D2E0E6;
padding:0.5em 0.5em 0.5em 2.5em;
}
strong b.fail{
color:#710909;
}
strong b.pass{
color:#5E740B;
}

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save