Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- this.jsdom = require('jsdom-global')();
- $ = require('jquery');
- let nuke = require('../05_ArmageDOM_1.11.16').nuke;
- let expect = require('chai').expect;
- describe('test cases for nuke function', function () {
- let testObject;
- beforeEach('init the object', function () {
- testObject = Object.create(nuke);
- document.body.innerHTML =
- `<div id="target">
- <div class="nested target">
- <p>This is some text</p>
- </div>
- <div class="target">
- <p>Empty div</p>
- </div>
- <div class="inside">
- <span class="nested">Some more text</span>
- <span class="target">Some more text</span>
- </div>
- </div>`;
- });
- it("with invalid selectors it should do nothing", function(){
- let selector = $('#target');
- let previous = selector.html();
- nuke(10, '#target');
- expect(selector.html()).to.be.equal(previous, "The function did not return correct result!")
- });
- it("with ('.nested', '.inside) should do nothing", function() {
- let selector = $('#target');
- let prev = selector.html();
- nuke('.nested', '.inside');
- expect(selector.html()).to.equal(prev, "The function did not return correct result!");
- });
- it("with invalid parameter, should do nothing", function(){
- let selector1 = '#target';
- let selector2 = 'nested';
- let l = $(selector1).length
- nuke(selector1, selector2);
- expect($(selector1).length).to.be.equal(l, "The function did not return correct result!")
- });
- it('should do noting if parameters are equals', () => {
- let selector = '#target';
- let before = document.body.innerHTML;
- nuke(selector, selector);
- let after = document.body.innerHTML;
- expect(before).to.be.equal(after);
- });
- it('should remove nodes whit correct selectors', () => {
- let selector1 = '.target';
- let selector2 = '.nested';
- console.log("Before: " + document.body.innerHTML);
- nuke(selector1, selector2);
- console.log("After: " + document.body.innerHTML);
- let after = $(selector1 + selector2);
- expect(after.length).to.be.equal(0);
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment