yay - every test on xml and dom succeeds
This commit is contained in:
		
							parent
							
								
									f932f560bd
								
							
						
					
					
						commit
						0a8118367d
					
				@ -160,12 +160,22 @@ YXml = (function() {
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  YXml.prototype.attr = function(name, value) {
 | 
			
		||||
    var attrs, classes;
 | 
			
		||||
    var attrs, c, classes, cs, _i, _len;
 | 
			
		||||
    if (arguments.length > 1) {
 | 
			
		||||
      if (value.constructor !== String) {
 | 
			
		||||
        throw new Error("The attributes must be of type String!");
 | 
			
		||||
      }
 | 
			
		||||
      this._model.val("attributes").val(name, value);
 | 
			
		||||
      if (name === "class") {
 | 
			
		||||
        classes = value.split(" ");
 | 
			
		||||
        cs = {};
 | 
			
		||||
        for (_i = 0, _len = classes.length; _i < _len; _i++) {
 | 
			
		||||
          c = classes[_i];
 | 
			
		||||
          cs[c] = true;
 | 
			
		||||
        }
 | 
			
		||||
        this._model.val("classes", new this._model.custom_types.Object(cs));
 | 
			
		||||
      } else {
 | 
			
		||||
        this._model.val("attributes").val(name, value);
 | 
			
		||||
      }
 | 
			
		||||
      return this;
 | 
			
		||||
    } else if (arguments.length > 0) {
 | 
			
		||||
      if (name === "class") {
 | 
			
		||||
@ -365,7 +375,7 @@ YXml = (function() {
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  YXml.prototype.getDom = function() {
 | 
			
		||||
    var attr_name, attr_value, child, dom, i, that, _i, _len, _ref, _ref1;
 | 
			
		||||
    var attr_name, attr_value, child, dom, i, setClasses, that, _i, _len, _ref, _ref1;
 | 
			
		||||
    if (this._dom == null) {
 | 
			
		||||
      this._dom = document.createElement(this._model.val("tagname"));
 | 
			
		||||
      _ref = this.attr();
 | 
			
		||||
@ -394,14 +404,18 @@ YXml = (function() {
 | 
			
		||||
        for (_j = 0, _len1 = events.length; _j < _len1; _j++) {
 | 
			
		||||
          event = events[_j];
 | 
			
		||||
          if (event.type === "insert") {
 | 
			
		||||
            newNode = event.value.getDom();
 | 
			
		||||
            children = that._dom.childNodes;
 | 
			
		||||
            if (children.length > 0) {
 | 
			
		||||
              rightNode = children[0];
 | 
			
		||||
            if (event.value.constructor === String) {
 | 
			
		||||
              newNode = document.createTextNode(event.value);
 | 
			
		||||
            } else {
 | 
			
		||||
              rightNode = null;
 | 
			
		||||
              newNode = event.value.getDom();
 | 
			
		||||
              event.value._setParent(that);
 | 
			
		||||
            }
 | 
			
		||||
            children = that._dom.childNodes;
 | 
			
		||||
            if (children.length === event.position) {
 | 
			
		||||
              rightNode = null;
 | 
			
		||||
            } else {
 | 
			
		||||
              rightNode = children[event.position];
 | 
			
		||||
            }
 | 
			
		||||
            event.value._setParent(that);
 | 
			
		||||
            _results.push(dont_proxy(function() {
 | 
			
		||||
              return that._dom.insertBefore(newNode, rightNode);
 | 
			
		||||
            }));
 | 
			
		||||
@ -436,19 +450,44 @@ YXml = (function() {
 | 
			
		||||
        }
 | 
			
		||||
        return _results;
 | 
			
		||||
      });
 | 
			
		||||
      this._model.val("classes").observe(function(events) {
 | 
			
		||||
      setClasses = function() {
 | 
			
		||||
        return that._model.val("classes").observe(function(events) {
 | 
			
		||||
          var event, _j, _len1, _results;
 | 
			
		||||
          _results = [];
 | 
			
		||||
          for (_j = 0, _len1 = events.length; _j < _len1; _j++) {
 | 
			
		||||
            event = events[_j];
 | 
			
		||||
            if (event.type === "add" || event.type === "update") {
 | 
			
		||||
              _results.push(dont_proxy(function() {
 | 
			
		||||
                return that._dom.classList.add(event.name);
 | 
			
		||||
              }));
 | 
			
		||||
            } else if (event.type === "delete") {
 | 
			
		||||
              _results.push(dont_proxy(function() {
 | 
			
		||||
                return that._dom.classList.remove(event.name);
 | 
			
		||||
              }));
 | 
			
		||||
            } else {
 | 
			
		||||
              _results.push(void 0);
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
          return _results;
 | 
			
		||||
        });
 | 
			
		||||
      };
 | 
			
		||||
      setClasses();
 | 
			
		||||
      this._model.observe(function(events) {
 | 
			
		||||
        var event, _j, _len1, _results;
 | 
			
		||||
        _results = [];
 | 
			
		||||
        for (_j = 0, _len1 = events.length; _j < _len1; _j++) {
 | 
			
		||||
          event = events[_j];
 | 
			
		||||
          if (event.type === "add" || event.type === "update") {
 | 
			
		||||
            _results.push(dont_proxy(function() {
 | 
			
		||||
              return that._dom.classList.add(event.name);
 | 
			
		||||
            }));
 | 
			
		||||
          } else if (event.type === "delete") {
 | 
			
		||||
            _results.push(dont_proxy(function() {
 | 
			
		||||
              return that._dom.classList.remove(event.name);
 | 
			
		||||
            }));
 | 
			
		||||
            dont_proxy(function() {
 | 
			
		||||
              var classes;
 | 
			
		||||
              classes = that.attr("class");
 | 
			
		||||
              if ((classes == null) || classes === "") {
 | 
			
		||||
                return that._dom.removeAttribute("class");
 | 
			
		||||
              } else {
 | 
			
		||||
                return that._dom.setAttribute("class", that.attr("class"));
 | 
			
		||||
              }
 | 
			
		||||
            });
 | 
			
		||||
            _results.push(setClasses());
 | 
			
		||||
          } else {
 | 
			
		||||
            _results.push(void 0);
 | 
			
		||||
          }
 | 
			
		||||
@ -481,28 +520,32 @@ dont_proxy = function(f) {
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
initialize_proxies = function() {
 | 
			
		||||
  var insertBefore, removeChild, replaceChild, that, _proxy;
 | 
			
		||||
  _proxy = function(f_name, f, source) {
 | 
			
		||||
  var f_add, f_remove, insertBefore, removeChild, replaceChild, that, _proxy;
 | 
			
		||||
  _proxy = function(f_name, f, source, y) {
 | 
			
		||||
    var old_f;
 | 
			
		||||
    if (source == null) {
 | 
			
		||||
      source = Element.prototype;
 | 
			
		||||
    }
 | 
			
		||||
    old_f = source[f_name];
 | 
			
		||||
    return source[f_name] = function() {
 | 
			
		||||
      if ((this._y_xml == null) || proxy_token) {
 | 
			
		||||
      if ((!((y != null) || (this._y_xml != null))) || proxy_token) {
 | 
			
		||||
        return old_f.apply(this, arguments);
 | 
			
		||||
      } else {
 | 
			
		||||
      } else if (this._y_xml != null) {
 | 
			
		||||
        return f.apply(this._y_xml, arguments);
 | 
			
		||||
      } else {
 | 
			
		||||
        return f.apply(y, arguments);
 | 
			
		||||
      }
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
  that = this;
 | 
			
		||||
  this._dom.classList.add = function(c) {
 | 
			
		||||
  f_add = function(c) {
 | 
			
		||||
    return that.addClass(c);
 | 
			
		||||
  };
 | 
			
		||||
  this._dom.classList.remove = function(c) {
 | 
			
		||||
  _proxy("add", f_add, this._dom.classList, this);
 | 
			
		||||
  f_remove = function(c) {
 | 
			
		||||
    return that.removeClass(c);
 | 
			
		||||
  };
 | 
			
		||||
  _proxy("remove", f_remove, this._dom.classList, this);
 | 
			
		||||
  this._dom.__defineSetter__('className', function(val) {
 | 
			
		||||
    return that.attr('class', val);
 | 
			
		||||
  });
 | 
			
		||||
@ -558,12 +601,12 @@ initialize_proxies = function() {
 | 
			
		||||
  removeChild = function(node) {
 | 
			
		||||
    return node._y_xml.remove();
 | 
			
		||||
  };
 | 
			
		||||
  _proxy('removeChild', removeChild, this._dom);
 | 
			
		||||
  _proxy('removeChild', removeChild);
 | 
			
		||||
  replaceChild = function(insertedNode, replacedNode) {
 | 
			
		||||
    insertBefore.call(this, insertedNode, replacedNode);
 | 
			
		||||
    return removeChild.call(this, replacedNode);
 | 
			
		||||
  };
 | 
			
		||||
  return _proxy('replaceChild', replaceChild, this._dom);
 | 
			
		||||
  return _proxy('replaceChild', replaceChild);
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
if (typeof window !== "undefined" && window !== null) {
 | 
			
		||||
 | 
			
		||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							@ -1,9 +1,6 @@
 | 
			
		||||
 | 
			
		||||
json_types_uninitialized = require "./JsonTypes"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module.exports = (HB)->
 | 
			
		||||
  json_types = json_types_uninitialized HB
 | 
			
		||||
  types = json_types.types
 | 
			
		||||
 | 
			
		||||
@ -109,7 +109,15 @@ class YXml
 | 
			
		||||
    if arguments.length > 1
 | 
			
		||||
      if value.constructor isnt String
 | 
			
		||||
        throw new Error "The attributes must be of type String!"
 | 
			
		||||
      @_model.val("attributes").val(name, value)
 | 
			
		||||
      if name is "class"
 | 
			
		||||
        classes = value.split(" ")
 | 
			
		||||
        cs = {}
 | 
			
		||||
        for c in classes
 | 
			
		||||
          cs[c] = true
 | 
			
		||||
 | 
			
		||||
        @_model.val("classes", new @_model.custom_types.Object(cs))
 | 
			
		||||
      else
 | 
			
		||||
        @_model.val("attributes").val(name, value)
 | 
			
		||||
      @
 | 
			
		||||
    else if arguments.length > 0
 | 
			
		||||
      if name is "class"
 | 
			
		||||
@ -323,13 +331,17 @@ class YXml
 | 
			
		||||
      @_model.val("children").observe (events)->
 | 
			
		||||
        for event in events
 | 
			
		||||
          if event.type is "insert"
 | 
			
		||||
            newNode = event.value.getDom()
 | 
			
		||||
            children = that._dom.childNodes
 | 
			
		||||
            if children.length > 0
 | 
			
		||||
              rightNode = children[0]
 | 
			
		||||
            if event.value.constructor is String
 | 
			
		||||
              newNode = document.createTextNode(event.value)
 | 
			
		||||
            else
 | 
			
		||||
              newNode = event.value.getDom()
 | 
			
		||||
              event.value._setParent that
 | 
			
		||||
            children = that._dom.childNodes
 | 
			
		||||
            if children.length is event.position
 | 
			
		||||
              rightNode = null
 | 
			
		||||
            event.value._setParent that
 | 
			
		||||
            else
 | 
			
		||||
              rightNode = children[event.position]
 | 
			
		||||
 | 
			
		||||
            dont_proxy ()->
 | 
			
		||||
              that._dom.insertBefore newNode, rightNode
 | 
			
		||||
          else if event.type is "delete"
 | 
			
		||||
@ -345,14 +357,27 @@ class YXml
 | 
			
		||||
          else if event.type is "delete"
 | 
			
		||||
            dont_proxy ()->
 | 
			
		||||
              that._dom.removeAttribute event.name
 | 
			
		||||
      @_model.val("classes").observe (events)->
 | 
			
		||||
      setClasses = ()->
 | 
			
		||||
        that._model.val("classes").observe (events)->
 | 
			
		||||
          for event in events
 | 
			
		||||
            if event.type is "add" or event.type is "update"
 | 
			
		||||
              dont_proxy ()->
 | 
			
		||||
                that._dom.classList.add event.name # classes are stored as the keys
 | 
			
		||||
            else if event.type is "delete"
 | 
			
		||||
              dont_proxy ()->
 | 
			
		||||
                that._dom.classList.remove event.name
 | 
			
		||||
      setClasses()
 | 
			
		||||
      @_model.observe (events)->
 | 
			
		||||
        for event in events
 | 
			
		||||
          if event.type is "add" or event.type is "update"
 | 
			
		||||
            dont_proxy ()->
 | 
			
		||||
              that._dom.classList.add event.name # classes are stored as the keys
 | 
			
		||||
          else if event.type is "delete"
 | 
			
		||||
            dont_proxy ()->
 | 
			
		||||
              that._dom.classList.remove event.name
 | 
			
		||||
              classes = that.attr("class")
 | 
			
		||||
              if (not classes?) or classes is ""
 | 
			
		||||
                that._dom.removeAttribute "class"
 | 
			
		||||
              else
 | 
			
		||||
                that._dom.setAttribute "class", that.attr("class")
 | 
			
		||||
            setClasses()
 | 
			
		||||
 | 
			
		||||
    @_dom
 | 
			
		||||
 | 
			
		||||
proxies_are_initialized = false
 | 
			
		||||
@ -371,20 +396,26 @@ dont_proxy = (f)->
 | 
			
		||||
 | 
			
		||||
initialize_proxies = ()->
 | 
			
		||||
 | 
			
		||||
  _proxy = (f_name, f, source = Element.prototype)->
 | 
			
		||||
  _proxy = (f_name, f, source = Element.prototype, y)->
 | 
			
		||||
    old_f = source[f_name]
 | 
			
		||||
    source[f_name] = ()->
 | 
			
		||||
      if (not @_y_xml?) or proxy_token
 | 
			
		||||
      if (not (y? or @_y_xml?)) or proxy_token
 | 
			
		||||
        old_f.apply this, arguments
 | 
			
		||||
      else
 | 
			
		||||
      else if @_y_xml?
 | 
			
		||||
        f.apply @_y_xml, arguments
 | 
			
		||||
      else
 | 
			
		||||
        f.apply y, arguments
 | 
			
		||||
 | 
			
		||||
  that = this
 | 
			
		||||
  @_dom.classList.add = (c)->
 | 
			
		||||
  f_add = (c)->
 | 
			
		||||
    that.addClass c
 | 
			
		||||
  @_dom.classList.remove = (c)->
 | 
			
		||||
  _proxy "add", f_add, @_dom.classList, @
 | 
			
		||||
 | 
			
		||||
  f_remove = (c)->
 | 
			
		||||
    that.removeClass c
 | 
			
		||||
 | 
			
		||||
  _proxy "remove", f_remove, @_dom.classList, @
 | 
			
		||||
 | 
			
		||||
  @_dom.__defineSetter__ 'className', (val)->
 | 
			
		||||
    that.attr('class', val)
 | 
			
		||||
  @_dom.__defineGetter__ 'className', ()->
 | 
			
		||||
@ -436,11 +467,11 @@ initialize_proxies = ()->
 | 
			
		||||
 | 
			
		||||
  removeChild = (node)->
 | 
			
		||||
    node._y_xml.remove()
 | 
			
		||||
  _proxy 'removeChild', removeChild, @_dom
 | 
			
		||||
  replaceChild = (insertedNode, replacedNode)->
 | 
			
		||||
  _proxy 'removeChild', removeChild
 | 
			
		||||
  replaceChild = (insertedNode, replacedNode)-> # TODO: handle replace with replace behavior...
 | 
			
		||||
    insertBefore.call this, insertedNode, replacedNode
 | 
			
		||||
    removeChild.call this, replacedNode
 | 
			
		||||
  _proxy 'replaceChild', replaceChild, @_dom
 | 
			
		||||
  _proxy 'replaceChild', replaceChild
 | 
			
		||||
 | 
			
		||||
if window?
 | 
			
		||||
  if window.Y?
 | 
			
		||||
 | 
			
		||||
@ -296,7 +296,8 @@ describe "Y-Xml", ->
 | 
			
		||||
        expect(@dom.getAttribute("test_attribute")).to.equal("newVal")
 | 
			
		||||
        @dom.removeAttribute("test_attribute")
 | 
			
		||||
        expect(@u1.attr("test_attribute")).to.be.undefined
 | 
			
		||||
        expect(@dom.getAttribute("test_attribute")).to.be.undefined
 | 
			
		||||
        attr = @dom.getAttribute("test_attribute")
 | 
			
		||||
        expect(attr?).to.be.false
 | 
			
		||||
 | 
			
		||||
      it "supports dom.removeChild", ->
 | 
			
		||||
        newdom = $("<p>dtrn</p>")[0]
 | 
			
		||||
@ -310,12 +311,12 @@ describe "Y-Xml", ->
 | 
			
		||||
 | 
			
		||||
      it "supports dom.replaceChild", ->
 | 
			
		||||
        dom = $("<p>dtrn</p>")[0]
 | 
			
		||||
        @dom.appendChild(newdom)
 | 
			
		||||
        @dom.appendChild(dom)
 | 
			
		||||
        expect(@u1+"").to.equal("<div><p>dtrn</p></div>")
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><p>dtrn</p></div>")
 | 
			
		||||
 | 
			
		||||
        newdom = $("<p>replaced</p>")[0]
 | 
			
		||||
        @dom.replaceChild(dom,newdom)
 | 
			
		||||
        @dom.replaceChild(newdom, dom)
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><p>replaced</p></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div><p>replaced</p></div>")
 | 
			
		||||
 | 
			
		||||
@ -328,7 +329,7 @@ describe "Y-Xml", ->
 | 
			
		||||
 | 
			
		||||
      it "supports dom.textContent", ->
 | 
			
		||||
        dom = $("<p>dtrn</p>")[0]
 | 
			
		||||
        @dom.appendChild(newdom)
 | 
			
		||||
        @dom.appendChild(dom)
 | 
			
		||||
        expect(@u1+"").to.equal("<div><p>dtrn</p></div>")
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><p>dtrn</p></div>")
 | 
			
		||||
 | 
			
		||||
@ -338,7 +339,7 @@ describe "Y-Xml", ->
 | 
			
		||||
 | 
			
		||||
      it "suppports dom.textContent (non empty string)", ->
 | 
			
		||||
        dom = $("<p>dtrn</p>")[0]
 | 
			
		||||
        @dom.appendChild(newdom)
 | 
			
		||||
        @dom.appendChild(dom)
 | 
			
		||||
        expect(@u1+"").to.equal("<div><p>dtrn</p></div>")
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><p>dtrn</p></div>")
 | 
			
		||||
 | 
			
		||||
@ -347,9 +348,8 @@ describe "Y-Xml", ->
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div>stuff</div>")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.addClass", ->
 | 
			
		||||
        @j.addClass("testy")
 | 
			
		||||
        @j.addClass("testedy tested")
 | 
			
		||||
        expect(@dom.getAttribute("class")).to.equal("testy testedy tested")
 | 
			
		||||
        expect(@dom.getAttribute("class")).to.equal("testedy tested")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.after", ->
 | 
			
		||||
        d = $("<span></span>")
 | 
			
		||||
@ -362,27 +362,27 @@ describe "Y-Xml", ->
 | 
			
		||||
        d = $("<span></span>")[0]
 | 
			
		||||
        @j.append(d)
 | 
			
		||||
        d = $("<div></div>")[0]
 | 
			
		||||
        @dom.append(d)
 | 
			
		||||
        @j.append(d)
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><span></span><div></div></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div><span></span><div></div></div>")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.appendTo", ->
 | 
			
		||||
        $("<b>appendedTo</b>").appendTo(@dom)
 | 
			
		||||
        $("p").appendTo(@dom)
 | 
			
		||||
        $("<p>").appendTo(@dom)
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><b>appendedTo</b><p></p></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div><b>appendedTo</b><p></p></div>")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.before", ->
 | 
			
		||||
        newdom = $("p")
 | 
			
		||||
        newdom = $("<p>")
 | 
			
		||||
        $(@dom).append(newdom)
 | 
			
		||||
        newdom.before("<div>before</div>")
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><div>before</div><p></p></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div><div>before</div><p></p></div>")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.detach", ->
 | 
			
		||||
        d = $("p")
 | 
			
		||||
        $j.append(d)
 | 
			
		||||
        $j.detach("p")
 | 
			
		||||
        d = $("<p>")
 | 
			
		||||
        @j.append(d)
 | 
			
		||||
        d.detach()
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div></div>")
 | 
			
		||||
 | 
			
		||||
@ -396,16 +396,16 @@ describe "Y-Xml", ->
 | 
			
		||||
        expect(@u1+"").to.equal("<div></div>")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.insertAfter", ->
 | 
			
		||||
        d = $("span")
 | 
			
		||||
        d = $("<span>")
 | 
			
		||||
        d.appendTo(@dom)
 | 
			
		||||
        $("<p>after</p>").insertAfter(d)
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><span></span><p>after</p></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div><span></span><p>after</p></div>")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.insertBefore", ->
 | 
			
		||||
        d = $("span")
 | 
			
		||||
        d = $("<span>")
 | 
			
		||||
        d.appendTo(@j)
 | 
			
		||||
        $("<p>after</p>").insertAfter(d)
 | 
			
		||||
        $("<p>before</p>").insertBefore(d)
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><p>before</p><span></span></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div><p>before</p><span></span></div>")
 | 
			
		||||
 | 
			
		||||
@ -438,30 +438,35 @@ describe "Y-Xml", ->
 | 
			
		||||
        expect(@j.attr("test_attribute")).to.be.undefined
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.removeClass", ->
 | 
			
		||||
        @j.addClass("testy")
 | 
			
		||||
        @j.addClass("testedy tested")
 | 
			
		||||
        expect(@dom.getAttribute("class")).to.equal("testy testedy tested")
 | 
			
		||||
        expect(@dom.getAttribute("class")).to.equal("testedy tested")
 | 
			
		||||
 | 
			
		||||
        @j.removeClass("testedy")
 | 
			
		||||
        expect(@dom.getAttribute("class")).to.equal("testy tested")
 | 
			
		||||
        expect(@dom.getAttribute("class")).to.equal("tested")
 | 
			
		||||
        expect(@u1.hasClass("testedy")).to.be.false
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.attr", ->
 | 
			
		||||
        @j.attr("atone", "yeah")
 | 
			
		||||
        expect(@u1.attr("atone")).to.equal("yeah")
 | 
			
		||||
        expect(@j.attr("atone")).to.equal("yeah")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.replaceAll", ->
 | 
			
		||||
        $("<span>New span content </span>").replaceAll("#test_dom div")
 | 
			
		||||
        @check()
 | 
			
		||||
        d = $("<p />")
 | 
			
		||||
        d.appendTo(@dom)
 | 
			
		||||
        d = $("<p />")
 | 
			
		||||
        d.appendTo(@dom)
 | 
			
		||||
        $("<span>").replaceAll($(@dom).find("p"))
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><span></span><span></span></div>")
 | 
			
		||||
        expect(@u1+"").to.equal("<div><span></span><span></span></div>")
 | 
			
		||||
 | 
			
		||||
      it "supports jquery.replaceWith", ->
 | 
			
		||||
        d = $("span")
 | 
			
		||||
        d = $("<span>")
 | 
			
		||||
        @j.prepend(d)
 | 
			
		||||
        d = $("span")
 | 
			
		||||
        d = $("<span>")
 | 
			
		||||
        @j.prepend(d)
 | 
			
		||||
        d = $("span")
 | 
			
		||||
        d = $("<span>")
 | 
			
		||||
        @j.prepend(d)
 | 
			
		||||
        d = @j.getElementsByTagName("span")
 | 
			
		||||
        d = @j.find("span")
 | 
			
		||||
        d.replaceWith("<div></div>")
 | 
			
		||||
 | 
			
		||||
        expect(@dom.outerHTML).to.equal("<div><div></div><div></div><div></div></div>")
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user