コード例 #1
0
ファイル: highlighter.js プロジェクト: Livefyre/xrange
    it('wraps from an element to its parents sibling', function () {
      htmlRange = new XRange();
      htmlRange.setStart(htmlDiv.childNodes[1].childNodes[0], 2);
      htmlRange.setEnd(htmlDiv.childNodes[2], 2);
      highlighter.highlight(htmlRange);

      var highlights = htmlDiv.getElementsByClassName(className);
      chai.expect(highlights.length).to.equal(2);
      chai.expect(highlights[0].innerHTML).to.equal('f');
      chai.expect(highlights[1].innerHTML).to.equal(' g');
    });
コード例 #2
0
ファイル: highlighter.js プロジェクト: Livefyre/xrange
    it('wraps a simple text range', function () {
      simpleRange = new XRange();
      var node = simpleDiv.childNodes[0];
      simpleRange.setStart(node, 2);
      simpleRange.setEnd(node, 9);
      highlighter.highlight(simpleRange);

      var highlights = simpleDiv.getElementsByClassName(className);
      chai.expect(highlights.length).to.equal(1);
      chai.expect(highlights[0].innerHTML).to.equal('c def g');
    });
コード例 #3
0
ファイル: highlighter.js プロジェクト: Livefyre/xrange
    it('wraps an entire html element', function () {
      htmlRange = new XRange();
      htmlRange.setStart(htmlDiv.childNodes[0], 2);
      htmlRange.setEnd(htmlDiv.childNodes[2], 2);
      highlighter.highlight(htmlRange);

      var highlights = htmlDiv.getElementsByClassName(className);
      chai.expect(highlights.length).to.equal(3);
      chai.expect(highlights[0].innerHTML).to.equal('c ');
      chai.expect(highlights[1].innerHTML).to.equal('def');
      chai.expect(highlights[2].innerHTML).to.equal(' g');
    });
コード例 #4
0
ファイル: highlighter.js プロジェクト: Livefyre/xrange
    it('unwraps elements even if they are not closed', function () {
      complexRange = new XRange();
      complexRange.setStart(complexDiv.childNodes[0], 2);
      var endNode = domUtil.findNodeInElement(complexDiv, true);
      complexRange.setEnd(endNode, 2);
      highlighter.highlight(complexRange);

      var highlights = complexDiv.getElementsByClassName(className);
      chai.expect(highlights.length).to.equal(4);

      highlighter.unhighlight(complexRange);
      highlights = complexDiv.getElementsByClassName(className);
      chai.expect(highlights.length).to.equal(0);
    });
コード例 #5
0
ファイル: highlighter.js プロジェクト: Livefyre/xrange
  it('can highlight, unhighlight, and highight the same range', function () {
    complexRange = new XRange();
    complexRange.setStart(complexDiv.childNodes[0], 2);
    var endNode = domUtil.findNodeInElement(complexDiv, true);
    complexRange.setEnd(endNode, 2);
    highlighter.highlight(complexRange);

    var highlights = complexDiv.getElementsByClassName(className);
    chai.expect(highlights.length).to.equal(4);

    highlighter.unhighlight(complexRange);
    highlights = complexDiv.getElementsByClassName(className);
    chai.expect(highlights.length).to.equal(0);

    highlighter.highlight(complexRange);
    highlights = complexDiv.getElementsByClassName(className);
    chai.expect(highlights.length).to.equal(4);
  });