Вход Регистрация
Файл: library/wysihtml5/test/dom/observe_test.js
Строк: 139
<?php
module
("wysihtml5.dom.observe", {
  
setup: function() {
    
this.container  document.createElement("div");
    
this.element    document.createElement("textarea");
    
this.container.appendChild(this.element);
    
document.body.appendChild(this.container);
  },
  
  
teardown: function() {
    
this.container.parentNode.removeChild(this.container);
    
    var 
iframe;
    while (
iframe document.querySelector("iframe.wysihtml5-sandbox")) {
      
iframe.parentNode.removeChild(iframe);
    }
  }
});


test("Basic test", function() {
  
expect(4);
  
  var 
element this.element;
  
  
wysihtml5.dom.observe(element, ["mouseover""mouseout"], function(event) {
    
ok(true"'" event.type "' correctly fired");
  });
  
  
wysihtml5.dom.observe(element"click", function(event) {
    
equal(event.targetelement"event.target or event.srcElement are set");
    
ok(true"'click' correctly fired");
  });
  
  
QUnit.triggerEvent(element"mouseover");
  
QUnit.triggerEvent(element"mouseout");
  
QUnit.triggerEvent(element"click");
});


test("Test stopPropagation and scope of event handler", function(event) {
  
expect(2);
  var 
element this.element;
  
  
wysihtml5.dom.observe(this.container"click", function(event) {
    
ok(false"The event shouldn't have been bubbled!");
  });
  
  
wysihtml5.dom.observe(this.element"click", function(event) {
    
event.stopPropagation();
    
equal(thiselement"Event handler bound to correct scope");
    
ok(true"stopPropagation correctly fired");
  });
  
  
QUnit.triggerEvent(this.element"click");
});

test("Test detaching events", function() {
  
expect(0);
  var 
eventListener wysihtml5.dom.observe(this.element"click", function() {
    
ok(false"This should not be triggered");
  });
  
  
eventListener.stop();
  
QUnit.triggerEvent(this.element"click");
});

asyncTest("Advanced test observing within a sandboxed iframe", function() {
  
expect(2);
  
  var 
sandbox = new wysihtml5.dom.Sandbox(function() {
    var 
element sandbox.getDocument().createElement("div");
    
sandbox.getDocument().body.appendChild(element);
    
wysihtml5.dom.observe(element, ["click""mousedown"], function(event) {
      
ok(true"'" event.type "' correctly fired");
    });
    
QUnit.triggerEvent(element"click");
    
QUnit.triggerEvent(element"mousedown");
    
    
start();
  });
  
  
sandbox.insertInto(document.body);
});
?>
Онлайн: 1
Реклама