boot.ts 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. // import webglSupport from './mockWebGL';
  2. import { Helper } from "./helper";
  3. import { viewerGlobals } from "../../src";
  4. export class Boot {
  5. public static AppendResult = false;
  6. public static main() {
  7. console.log("main")
  8. //let babylonSource = Boot.loadSync('base/js/babylon.viewer.max.js');
  9. //let spectreSource = Boot.loadSync('base/js/spectreonly.js');
  10. document.body.innerHTML = `<div id="result-div"></div><div id="working-div"></div>`;
  11. //register actions to occur before each test
  12. beforeEach(function (done) {
  13. // tslint:disable-next-line:no-console
  14. //console.debug('> Executing "' + details.name + '"');
  15. //clear DOM and create canvas and container
  16. document.getElementById('working-div')!.innerHTML = `<div style="font-size:30px;">WORKING CANVASES.</div>
  17. <div id="viewer-testing" style="width:512px;height:512px;">
  18. <div id="renderCanvas" width="512" height="512" style="width:512px;height:512px;"></div>
  19. <canvas id="referenceCanvas" width="512" height="512" style="width:512px;height:512px;"></canvas>
  20. </div>
  21. `;
  22. if (Boot.AppendResult) {
  23. var newResult = document.createElement('div');
  24. document.getElementById('result-div')!.appendChild(newResult);
  25. newResult.innerHTML = `<div class="result">
  26. <div class="resultDisplay"></div>
  27. <img class="renderImg" width="512" height="512" style="width:512px;height:512px;"></img>
  28. <img class="referenceImg" width="512" height="512" style="width:512px;height:512px;"></img>
  29. </div>`;
  30. /*if (!(<any>window).BABYLON) {
  31. eval.call(null, babylonSource);
  32. eval.call(null, spectreSource);
  33. }*/
  34. }
  35. else {
  36. //reset global state before executing test
  37. //delete (<any>window).BABYLON;
  38. //delete (<any>window).BabylonViewer;
  39. //delete (<any>window).SPECTRE;
  40. /*eval.call(null, babylonSource);
  41. eval.call(null, spectreSource);*/
  42. }
  43. viewerGlobals.disableInit = true;
  44. var DOMContentLoaded_event = document.createEvent("Event")
  45. DOMContentLoaded_event.initEvent("DOMContentLoaded", true, true)
  46. window.document.dispatchEvent(DOMContentLoaded_event);
  47. // Disable Webgl2 support in test mode for Phantom/IE compatibility.
  48. viewerGlobals.disableWebGL2Support = true;
  49. done();
  50. });
  51. afterEach(function (done) {
  52. Helper.disposeViewer();
  53. //(<any>window).BabylonViewer.disposeAll();
  54. done();
  55. });
  56. }
  57. /*private static loadSync(url: string): string {
  58. var req = new XMLHttpRequest();
  59. req.open('GET', url, false);
  60. req.send();
  61. if (req.status >= 200 && req.status < 300) {
  62. //successful request
  63. return req.responseText;
  64. } else {
  65. //failed request
  66. console.error(req.status + ' ' + req.statusText);
  67. return null;
  68. }
  69. }*/
  70. }
  71. // webglSupport();
  72. export var main = Boot.main;