95 lines
2.7 KiB
HTML
95 lines
2.7 KiB
HTML
<html>
|
|
<head>
|
|
<script type="text/javascript" src="../../../dojo.js" data-dojo-config="isDebug:1, async:1"></script>
|
|
<script type="text/javascript">
|
|
require(["dojo", "doh"], function(dojo, doh) {
|
|
dojo.ready(function(){
|
|
doh.register("config-event", [
|
|
function expectDojoConfig(t) {
|
|
var
|
|
expectedConfig1, expectedConfig2,
|
|
called1, called2,
|
|
savedRawConfig,
|
|
configListener1= function(config, rawConfig){
|
|
called1= true;
|
|
savedRawConfig= rawConfig;
|
|
t.is(config, expectedConfig1);
|
|
},
|
|
configListener2= function(config, rawConfig){
|
|
called2= true;
|
|
savedRawConfig= rawConfig;
|
|
t.is(config, expectedConfig2);
|
|
};
|
|
var
|
|
configListeners = require.listenerQueues.config;
|
|
listenerCount= configListeners.length,
|
|
h1= require.on("config", configListener1),
|
|
h2= require.on("config", configListener2);
|
|
t.is(configListeners.length, listenerCount+2);
|
|
t.is(configListeners[listenerCount], configListener1);
|
|
t.is(configListeners[listenerCount+1], configListener2);
|
|
expectedConfig1= expectedConfig2= {
|
|
someFeature:1
|
|
};
|
|
called1= called2= 0;
|
|
require(expectedConfig1);
|
|
t.t(called1);
|
|
t.t(called2);
|
|
|
|
h1.remove();
|
|
t.is(configListeners.length, listenerCount+1);
|
|
t.is(configListeners[listenerCount], configListener2);
|
|
expectedConfig1= expectedConfig2= {
|
|
someFeature:0,
|
|
someOtherFeature:1
|
|
};
|
|
called1= called2= 0;
|
|
require(expectedConfig1);
|
|
t.is(called1, 0);
|
|
t.t(called2);
|
|
t.is(savedRawConfig.someFeature, 0);
|
|
t.is(savedRawConfig.someOtherFeature, 1);
|
|
h2.remove();
|
|
|
|
require({async:1});
|
|
t.is(require.async, true);
|
|
t.is(require.legacyMode, false);
|
|
|
|
require({async:true});
|
|
t.is(require.async, true);
|
|
t.is(require.legacyMode, false);
|
|
|
|
require({async:2});
|
|
t.is(require.async, true);
|
|
t.is(require.legacyMode, false);
|
|
|
|
require({async:"nonsense"});
|
|
t.is(require.async, true);
|
|
t.is(require.legacyMode, false);
|
|
|
|
require({async:0});
|
|
t.is(require.async, false);
|
|
t.is(require.legacyMode, "sync");
|
|
|
|
require({async:false});
|
|
t.is(require.async, false);
|
|
t.is(require.legacyMode, "sync");
|
|
|
|
require({async:"sync"});
|
|
t.is(require.async, false);
|
|
t.is(require.legacyMode, "sync");
|
|
|
|
require({async:"legacyAsync"});
|
|
t.is(require.async, false);
|
|
t.is(require.legacyMode, "legacyAsync");
|
|
}
|
|
]);
|
|
doh.runOnLoad();
|
|
});
|
|
});
|
|
</script>
|
|
</head>
|
|
<body>
|
|
</body>
|
|
</html>
|