EventBase.js 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. module( "EventBase" );
  2. test( "addListener,fireEvent", function() {
  3. var editor = te.obj[1];
  4. var div = te.dom[0];
  5. expect(6);
  6. editor.render(div);
  7. stop();
  8. editor.ready(function () {
  9. editor.focus();
  10. editor.addListener("event1", function () {
  11. ok(true, "listener1 is fired");
  12. });
  13. editor.addListener("event2", function () {
  14. ok(true, "listener2 is fired");
  15. });
  16. editor.fireEvent("event1");
  17. editor.fireEvent("event2");
  18. editor.fireEvent("event1 event2");
  19. var fun = function (type) {
  20. ok(true, type + " is fired");
  21. };
  22. editor.addListener("event3 event4 ", fun);
  23. editor.fireEvent("event3 event4 ");
  24. start();
  25. });
  26. } );
  27. test( "on,trigger", function() {
  28. var editor = te.obj[1];
  29. var div = te.dom[0];
  30. expect(6);
  31. editor.render(div);
  32. stop();
  33. editor.ready(function () {
  34. editor.focus();
  35. editor.on("event1", function () {
  36. ok(true, "listener1 is fired");
  37. });
  38. editor.on("event2", function () {
  39. ok(true, "listener2 is fired");
  40. });
  41. editor.trigger("event1");
  42. editor.trigger("event2");
  43. editor.trigger("event1 event2");
  44. var fun = function (type) {
  45. ok(true, type + " is fired");
  46. };
  47. editor.on("event3 event4 ", fun);
  48. editor.trigger("event3 event4 ");
  49. start();
  50. });
  51. } );
  52. test( "addListener,fireEvent --同一个侦听器绑定多个事件", function() {
  53. var editor = te.obj[1];
  54. var div = te.dom[0];
  55. editor.render( div );
  56. expect( 2 );
  57. stop();
  58. editor.ready(function () {
  59. editor.focus();
  60. editor.addListener( "event1", function() {
  61. ok( true, "listener1 is fired" );
  62. } );
  63. editor.addListener( "event1", function() {
  64. ok( true, "listener2 is fired" );
  65. } );
  66. editor.fireEvent( "event1" );
  67. start();
  68. });
  69. } );
  70. test( "on,trigger --同一个侦听器绑定多个事件", function() {
  71. var editor = te.obj[1];
  72. var div = te.dom[0];
  73. editor.render( div );
  74. expect( 2 );
  75. stop();
  76. editor.ready(function () {
  77. editor.focus();
  78. editor.on( "event1", function() {
  79. ok( true, "listener1 is fired" );
  80. } );
  81. editor.on( "event1", function() {
  82. ok( true, "listener2 is fired" );
  83. } );
  84. editor.trigger( "event1" );
  85. start();
  86. });
  87. } );
  88. test( "removeListener", function() {
  89. var editor = te.obj[1];
  90. var div = te.dom[0];
  91. editor.render( div);
  92. expect(3);
  93. stop();
  94. editor.ready(function () {
  95. editor.focus();
  96. function fun1() {
  97. ok(true, "listener1 is fired");
  98. }
  99. function fun2() {
  100. ok(true, "listener2 is fired");
  101. }
  102. editor.addListener("event1", fun1);
  103. editor.addListener("event1", fun2);
  104. editor.fireEvent("event1");
  105. editor.removeListener("event1", fun1);
  106. editor.fireEvent("event1");
  107. function fun(type) {
  108. ok(true, type + " is fired");
  109. }
  110. editor.addListener("event3 event4 ", fun);
  111. editor.removeListener("event3 event4 ", fun);
  112. editor.fireEvent("event3 event4 ");
  113. start();
  114. });
  115. } );
  116. test( "off", function() {
  117. var editor = te.obj[1];
  118. var div = te.dom[0];
  119. editor.render( div);
  120. expect(3);
  121. stop();
  122. editor.ready(function () {
  123. editor.focus();
  124. function fun1() {
  125. ok(true, "listener1 is fired");
  126. }
  127. function fun2() {
  128. ok(true, "listener2 is fired");
  129. }
  130. editor.on("event1", fun1);
  131. editor.on("event1", fun2);
  132. editor.trigger("event1");
  133. editor.off("event1", fun1);
  134. editor.trigger("event1");
  135. function fun(type) {
  136. ok(true, type + " is fired");
  137. }
  138. editor.on("event3 event4 ", fun);
  139. editor.off("event3 event4 ", fun);
  140. editor.trigger("event3 event4 ");
  141. start();
  142. });
  143. } );
  144. test( "fireEvent--nolisteners", function() {
  145. var editor = te.obj[1];
  146. var div = te.dom[0];
  147. editor.render(div);
  148. stop();
  149. editor.ready(function () {
  150. editor.focus();
  151. function fun1() {
  152. ok(true, "listener1 is fired");
  153. }
  154. editor.fireEvent("event1");//no listener is fired
  155. editor.addListener("event1", fun1);
  156. editor.fireEvent("event1");//listener1 and listener2 are both fired
  157. start();
  158. });
  159. } );
  160. test( "trigger--nolisteners", function() {
  161. var editor = te.obj[1];
  162. var div = te.dom[0];
  163. editor.render(div);
  164. stop();
  165. editor.ready(function () {
  166. editor.focus();
  167. function fun1() {
  168. ok(true, "listener1 is fired");
  169. }
  170. editor.trigger("event1");//no listener is fired
  171. editor.on("event1", fun1);
  172. editor.trigger("event1");//listener1 and listener2 are both fired
  173. start();
  174. });
  175. } );