tests_main.js 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. require.config({
  2. paths: {
  3. "jquery": "components/jquery/jquery",
  4. "locales": "locale/locales",
  5. "sjcl": "components/sjcl/sjcl",
  6. "tinysort": "components/tinysort/src/jquery.tinysort",
  7. "underscore": "components/underscore/underscore",
  8. "backbone": "components/backbone/backbone",
  9. "localstorage": "components/backbone.localStorage/backbone.localStorage",
  10. "strophe": "components/strophe/strophe",
  11. "strophe.muc": "components/strophe.muc/index",
  12. "strophe.roster": "components/strophe.roster/index",
  13. "strophe.vcard": "components/strophe.vcard/index",
  14. "strophe.disco": "components/strophe.disco/index",
  15. // Extra test dependencies
  16. "jasmine": "components/jasmine/lib/jasmine-core/jasmine",
  17. "jasmine-html": "components/jasmine/lib/jasmine-core/jasmine-html",
  18. "jasmine-console-reporter": "node_modules/jasmine-reporters/src/jasmine.console_reporter",
  19. "jasmine-junit-reporter": "node_modules/jasmine-reporters/src/jasmine.junit_reporter"
  20. },
  21. // define module dependencies for modules not using define
  22. shim: {
  23. 'backbone': {
  24. //These script dependencies should be loaded before loading
  25. //backbone.js
  26. deps: [
  27. 'underscore',
  28. 'jquery'
  29. ],
  30. //Once loaded, use the global 'Backbone' as the
  31. //module value.
  32. exports: 'Backbone'
  33. },
  34. 'tinysort': { deps: ['jquery'] },
  35. 'strophe': { deps: ['jquery'] },
  36. 'underscore': { exports: '_' },
  37. 'strophe.muc': { deps: ['strophe', 'jquery'] },
  38. 'strophe.roster': { deps: ['strophe'] },
  39. 'strophe.vcard': { deps: ['strophe'] },
  40. 'strophe.disco': { deps: ['strophe'] },
  41. // Extra test dependencies
  42. 'jasmine-html': {
  43. deps: ['jasmine'],
  44. exports: 'jasmine'
  45. },
  46. 'jasmine-console-reporter': {
  47. deps: ['jasmine-html'],
  48. exports: 'jasmine'
  49. },
  50. 'jasmine-junit-reporter': {
  51. deps: ['jasmine-html'],
  52. exports: 'jasmine'
  53. }
  54. }
  55. });
  56. require([
  57. "jquery",
  58. "converse",
  59. "mock",
  60. "jasmine-html",
  61. "jasmine-console-reporter",
  62. "jasmine-junit-reporter",
  63. "spec/MainSpec",
  64. "spec/ChatRoomSpec"
  65. ], function($, converse, mock_connection, jasmine) {
  66. // Set up converse.js
  67. window.localStorage.clear();
  68. converse.initialize({
  69. prebind: false,
  70. xhr_user_search: false,
  71. auto_subscribe: false,
  72. animate: false
  73. });
  74. converse.onConnected(mock_connection);
  75. // Jasmine stuff
  76. var jasmineEnv = jasmine.getEnv();
  77. if (/PhantomJS/.test(navigator.userAgent)) {
  78. console.log('ehllo');
  79. jasmineEnv.addReporter(new jasmine.TrivialReporter());
  80. jasmineEnv.addReporter(new jasmine.JUnitXmlReporter('./test-reports/'));
  81. jasmineEnv.addReporter(new jasmine.ConsoleReporter());
  82. jasmineEnv.updateInterval = 0;
  83. } else {
  84. var htmlReporter = new jasmine.HtmlReporter();
  85. jasmineEnv.addReporter(htmlReporter);
  86. jasmineEnv.addReporter(new jasmine.ConsoleReporter());
  87. jasmineEnv.specFilter = function(spec) {
  88. return htmlReporter.specFilter(spec);
  89. };
  90. jasmineEnv.updateInterval = 0;
  91. }
  92. jasmineEnv.execute();
  93. });