Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
4 /**
5 * Tests if source editors are lazily initialized.
6 */
8 function ifWebGLSupported() {
9 let [target, debuggee, panel] = yield initShaderEditor(SIMPLE_CANVAS_URL);
10 let { gFront, ShadersEditorsView } = panel.panelWin;
12 try {
13 yield ShadersEditorsView._getEditor("vs");
14 ok(false, "The promise for a vertex shader editor should be rejected.");
15 } catch (e) {
16 ok(true, "The vertex shader editors wasn't initialized.");
17 }
19 try {
20 yield ShadersEditorsView._getEditor("fs");
21 ok(false, "The promise for a fragment shader editor should be rejected.");
22 } catch (e) {
23 ok(true, "The fragment shader editors wasn't initialized.");
24 }
26 reload(target);
27 yield once(gFront, "program-linked");
29 let vsEditor = yield ShadersEditorsView._getEditor("vs");
30 let fsEditor = yield ShadersEditorsView._getEditor("fs");
32 ok(vsEditor, "A vertex shader editor was initialized.");
33 ok(fsEditor, "A fragment shader editor was initialized.");
35 isnot(vsEditor, fsEditor,
36 "The vertex shader editor is distinct from the fragment shader editor.");
38 let vsEditor2 = yield ShadersEditorsView._getEditor("vs");
39 let fsEditor2 = yield ShadersEditorsView._getEditor("fs");
41 is(vsEditor, vsEditor2,
42 "The vertex shader editor instances are cached.");
43 is(fsEditor, fsEditor2,
44 "The fragment shader editor instances are cached.");
46 yield teardown(panel);
47 finish();
48 }