-
Notifications
You must be signed in to change notification settings - Fork 6
/
phet-core-tests.html
120 lines (110 loc) · 3.89 KB
/
phet-core-tests.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<!DOCTYPE HTML>
<!-- Top-level HTML file for phet-core generated by 'grunt generate-development-html' -->
<html>
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="initial-scale=1,user-scalable=no,maximum-scale=1"/>
<meta name="mobile-web-app-capable" content="yes">
<meta name="phet-sim-level" content="development">
<link rel="stylesheet" href="../sherpa/lib/qunit-2.20.0.css">
<title>phet-core</title>
</head>
<!-- body is only made black for the loading phase so that the splash screen is black -->
<body>
<div id="qunit"></div>
<div id="qunit-fixture"></div>
<script type="text/javascript">
/* eslint-disable quotes, quote-props */
window.phet = window.phet || {};
window.phet.chipper = window.phet.chipper || {};
window.phet.chipper.packageObject =
{
"name": "phet-core",
"version": "0.0.0",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/phetsims/phet-core.git"
},
"devDependencies": {
"grunt": "~1.5.3"
},
"phet": {
"generatedUnitTests": true,
"requirejsNamespace": "PHET_CORE",
"supportsOutputJS": true
}
};
window.phet.chipper.stringRepos =
[
{
"repo": "joist",
"requirejsNamespace": "JOIST"
},
{
"repo": "scenery-phet",
"requirejsNamespace": "SCENERY_PHET"
},
{
"repo": "sun",
"requirejsNamespace": "SUN"
},
{
"repo": "tambo",
"requirejsNamespace": "TAMBO"
},
{
"repo": "twixt",
"requirejsNamespace": "TWIXT"
}
];
window.phet.chipper.allowLocaleSwitching = true;
// Identify the brand (assume generated brand if not provided with query parameters)
const brandMatch = location.search.match( /brand=([^&]+)/ );
const brand = brandMatch ? decodeURIComponent( brandMatch[ 1 ] ) : 'adapted-from-phet';
// Preloads, with more included for phet-io brand
let preloads = [
'../sherpa/lib/jquery-2.1.0.js',
'../sherpa/lib/lodash-4.17.4.js',
'../sherpa/lib/FileSaver-b8054a2.js',
'../sherpa/lib/linebreak-1.1.0.js',
'../sherpa/lib/flatqueue-1.2.1.js',
'../sherpa/lib/paper-js-0.12.17.js',
'../sherpa/lib/he-1.1.1.js',
'../assert/js/assert.js',
'../query-string-machine/js/QueryStringMachine.js',
'../chipper/js/browser/initialize-globals.js',
'../sherpa/lib/seedrandom-2.4.2.js',
'../sherpa/lib/base64-js-1.2.0.js',
'../sherpa/lib/TextEncoderLite-3c9f6f0.js',
'../sherpa/lib/qunit-2.20.0.js',
'../chipper/js/browser/sim-tests/qunit-connector.js'
];
if ( brand === 'phet-io' ) {
preloads = preloads.concat( [
'../phet-io/js/phet-io-initialize-globals.js'
] );
}
// Loads a synchronously-executed asynchronously-downloaded script tag, with optional data-main parameter.
// See http://www.html5rocks.com/en/tutorials/speed/script-loading/ for more about script loading. It helps to
// load all of the scripts with this method, so they are treated the same (and placed in the correct execution
// order).
const loadURL = ( preloadURL, type = 'text/javascript' ) => {
const script = document.createElement( 'script' );
script.type = type;
script.src = preloadURL;
script.async = false;
script.setAttribute( 'crossorigin', 'use-credentials' );
document.head.appendChild( script );
};
// Kick off string loading immediately
loadURL( '../chipper/js/browser/load-unbuilt-strings.js' );
// Queue all of the preloads to be loaded.
preloads.forEach( preload => loadURL( preload ) );
// Module loading in compilation-free (development) mode will be kicked off once strings are loaded.
// This is done in load-unbuilt-strings.js
window.phet.chipper.loadModules = () => loadURL( '../chipper/dist/js/phet-core/js/phet-core-tests.js', 'module' );
</script>
</body>
</html>