Skip to content

Commit

Permalink
Fix delay option in browser
Browse files Browse the repository at this point in the history
  • Loading branch information
Jake Riesterer committed Apr 1, 2016
1 parent 4301caa commit 58b114d
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 0 deletions.
3 changes: 3 additions & 0 deletions support/browser-entry.js
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,9 @@ mocha.ui = function(ui){

mocha.setup = function(opts){
if ('string' == typeof opts) opts = { ui: opts };
if ('delay' in opts) {
this.delay(opts.delay);
}
for (var opt in opts) this[opt](opts[opt]);
return this;
};
Expand Down
29 changes: 29 additions & 0 deletions test/browser/delay.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<html>
<head>
<title>Mocha</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../../mocha.css" />
<script src="../../mocha.js"></script>
<script>
mocha.setup({
ui: 'bdd',
delay: true
})
</script>
<script>
function assert(expr, msg) {
if (!expr) throw new Error(msg);
}
</script>
<script src="delay.js"></script>
<script>
onload = function() {
mocha.run();
};
</script>
</head>
<body>
<div id="mocha"></div>
</body>
</html>
25 changes: 25 additions & 0 deletions test/browser/delay.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
var delay = 500;
var start = new Date().getTime();

describe('delayed execution', function() {
it('should define a global run function', function() {
assert(typeof run === 'function', 'run function is not defined');
});
it('should have waited ' + delay + 'ms to run this suite', function() {
assert(new Date().getTime() - delay >= start, 'did not delay');
});
});

setTimeout(function() {
describe('delayed execution', function() {
it('should be able to define a suite asynchronously', function() {
assert(true);
});
});

if (typeof run === 'function') {
run();
} else {
mocha.suite.run();
}
}, delay);

0 comments on commit 58b114d

Please sign in to comment.