69 lines
2.2 KiB
HTML
69 lines
2.2 KiB
HTML
|
<!DOCTYPE html>
|
||
|
<html>
|
||
|
<head>
|
||
|
<title>require.js: Define Error Local Test</title>
|
||
|
<script type="text/javascript" src="../../require.js"></script>
|
||
|
<script type="text/javascript" src="../doh/runner.js"></script>
|
||
|
<script type="text/javascript" src="../doh/_browserRunner.js"></script>
|
||
|
<script type="text/javascript">
|
||
|
var doneCount = 0;
|
||
|
var master = new doh.Deferred();
|
||
|
function done() {
|
||
|
doneCount += 1;
|
||
|
if (doneCount == 2) {
|
||
|
master.callback(true);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
requirejs({
|
||
|
waitSeconds: 2
|
||
|
}, ['b', 'defineError'], function (b, defineError) {
|
||
|
doh.is("shouldNotBeReached", b.name);
|
||
|
done();
|
||
|
}, function (err) {
|
||
|
|
||
|
if (err.requireType === 'define') {
|
||
|
requirejs(['c', 'd'], function (c, d) {
|
||
|
doh.is('c', c.name);
|
||
|
doh.is('a', c.a.name);
|
||
|
doh.is('d', d.name);
|
||
|
doh.is('b', d.b.name);
|
||
|
|
||
|
setTimeout(function () {
|
||
|
//Ask for the broken thing again, should get error
|
||
|
//handler still called.
|
||
|
requirejs(['defineError'], function (de) {
|
||
|
doh.is("shouldNotBeReached", de.name);
|
||
|
done();
|
||
|
}, function (err) {
|
||
|
doh.is("define", err.requireType);
|
||
|
done();
|
||
|
});
|
||
|
}, 10);
|
||
|
done();
|
||
|
});
|
||
|
}
|
||
|
});
|
||
|
|
||
|
doh.register(
|
||
|
"defineErrorLocal",
|
||
|
[
|
||
|
{
|
||
|
name: "defineErrorLocal",
|
||
|
timeout: 5000,
|
||
|
runTest: function () {
|
||
|
return master;
|
||
|
}
|
||
|
}
|
||
|
]
|
||
|
);
|
||
|
doh.run();
|
||
|
</script>
|
||
|
</head>
|
||
|
<body>
|
||
|
<h1>require.js: Define Error Local Test</h1>
|
||
|
<p>A factory function error calls the local error handler and later loads still work.</p>
|
||
|
<p>Check console for messages</p>
|
||
|
</body>
|
||
|
</html>
|