react / wstein / node_modules / jest-cli / node_modules / jsdom / node_modules / htmlparser2 / node_modules / domutils / test / tests / legacy.js
81153 viewsvar DomUtils = require("../..");1var fixture = require("../fixture");2var assert = require("assert");34// Set up expected structures5var expected = {6idAsdf: fixture[1],7tag2: [],8typeScript: []9};10for (var idx = 0; idx < 20; ++idx) {11expected.tag2.push(fixture[idx*2 + 1].children[5]);12expected.typeScript.push(fixture[idx*2 + 1].children[1]);13}1415describe("legacy", function() {16describe("getElements", function() {17var getElements = DomUtils.getElements;18it("returns the node with the specified ID", function() {19assert.deepEqual(20getElements({ id: "asdf" }, fixture, true, 1),21[expected.idAsdf]22);23});24it("returns empty array for unknown IDs", function() {25assert.deepEqual(getElements({ id: "asdfs" }, fixture, true), []);26});27it("returns the nodes with the specified tag name", function() {28assert.deepEqual(29getElements({ tag_name:"tag2" }, fixture, true),30expected.tag231);32});33it("returns empty array for unknown tag names", function() {34assert.deepEqual(35getElements({ tag_name : "asdfs" }, fixture, true),36[]37);38});39it("returns the nodes with the specified tag type", function() {40assert.deepEqual(41getElements({ tag_type: "script" }, fixture, true),42expected.typeScript43);44});45it("returns empty array for unknown tag types", function() {46assert.deepEqual(47getElements({ tag_type: "video" }, fixture, true),48[]49);50});51});5253describe("getElementById", function() {54var getElementById = DomUtils.getElementById;55it("returns the specified node", function() {56assert.equal(57expected.idAsdf,58getElementById("asdf", fixture, true)59);60});61it("returns `null` for unknown IDs", function() {62assert.equal(null, getElementById("asdfs", fixture, true));63});64});6566describe("getElementsByTagName", function() {67var getElementsByTagName = DomUtils.getElementsByTagName;68it("returns the specified nodes", function() {69assert.deepEqual(70getElementsByTagName("tag2", fixture, true),71expected.tag272);73});74it("returns empty array for unknown tag names", function() {75assert.deepEqual(76getElementsByTagName("tag23", fixture, true),77[]78);79});80});8182describe("getElementsByTagType", function() {83var getElementsByTagType = DomUtils.getElementsByTagType;84it("returns the specified nodes", function() {85assert.deepEqual(86getElementsByTagType("script", fixture, true),87expected.typeScript88);89});90it("returns empty array for unknown tag types", function() {91assert.deepEqual(92getElementsByTagType("video", fixture, true),93[]94);95});96});9798describe("getOuterHTML", function() {99var getOuterHTML = DomUtils.getOuterHTML;100it("Correctly renders the outer HTML", function() {101assert.equal(102getOuterHTML(fixture[1]),103"<tag1 id=\"asdf\"> <script>text</script> <!-- comment --> <tag2> text </tag2></tag1>"104);105});106});107108describe("getInnerHTML", function() {109var getInnerHTML = DomUtils.getInnerHTML;110it("Correctly renders the inner HTML", function() {111assert.equal(112getInnerHTML(fixture[1]),113" <script>text</script> <!-- comment --> <tag2> text </tag2>"114);115});116});117118});119120121