diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-05-03 15:35:00 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-05-03 15:35:00 +0200 |
commit | de98e0b232509d5f40c135d540a70e415272ff85 (patch) | |
tree | a79222a5b58484ab3b80d18efcaaa7ccc4769b33 /node_modules/dom-converter/scripts/js/test | |
parent | e0c9d480a73fa629c1e4a47d3e721f1d2d345406 (diff) |
node_modules
Diffstat (limited to 'node_modules/dom-converter/scripts/js/test')
4 files changed, 211 insertions, 0 deletions
diff --git a/node_modules/dom-converter/scripts/js/test/_prepare.js b/node_modules/dom-converter/scripts/js/test/_prepare.js new file mode 100644 index 000000000..7c34f602f --- /dev/null +++ b/node_modules/dom-converter/scripts/js/test/_prepare.js @@ -0,0 +1,8 @@ +// Generated by CoffeeScript 1.6.3 +var path, pathToLib; + +path = require('path'); + +pathToLib = path.resolve(__dirname, '../../js/lib'); + +require('little-popo')(pathToLib, false); diff --git a/node_modules/dom-converter/scripts/js/test/domConverter.js b/node_modules/dom-converter/scripts/js/test/domConverter.js new file mode 100644 index 000000000..d52e9bfb8 --- /dev/null +++ b/node_modules/dom-converter/scripts/js/test/domConverter.js @@ -0,0 +1,22 @@ +// Generated by CoffeeScript 1.6.3 +var domConverter; + +require('./_prepare'); + +domConverter = mod('domConverter'); + +describe("input types"); + +it("should work with objects", function() { + return domConverter.objectToDom({}); +}); + +it("should work with arrays", function() { + return domConverter.objectToDom([]); +}); + +it("should not work with other types", function() { + return (function() { + return domConverter.objectToDom('a'); + }).should["throw"](Error); +}); diff --git a/node_modules/dom-converter/scripts/js/test/objectToSaneObject.js b/node_modules/dom-converter/scripts/js/test/objectToSaneObject.js new file mode 100644 index 000000000..b86f707e6 --- /dev/null +++ b/node_modules/dom-converter/scripts/js/test/objectToSaneObject.js @@ -0,0 +1,108 @@ +// Generated by CoffeeScript 1.6.3 +var objectToSaneObject; + +require('./_prepare'); + +objectToSaneObject = mod('objectToSaneObject'); + +describe("sanitize()"); + +test("case: 'text'", function() { + var expectation, input, ret; + input = 'text'; + expectation = ['text']; + ret = objectToSaneObject.sanitize(input); + return ret.should.be.like(expectation); +}); + +test("case: ['text']", function() { + var expectation, input, ret; + input = ['text']; + expectation = ['text']; + ret = objectToSaneObject.sanitize(input); + return ret.should.be.like(expectation); +}); + +test("case: {a:b}", function() { + var expectation, input, ret; + input = { + a: 'b' + }; + expectation = [ + { + a: ['b'] + } + ]; + ret = objectToSaneObject.sanitize(input); + return ret.should.be.like(expectation); +}); + +test("case: {a:[b: 'c']}", function() { + var expectation, input, ret; + input = { + a: [ + { + b: 'c' + } + ] + }; + expectation = [ + { + a: [ + { + b: ['c'] + } + ] + } + ]; + ret = objectToSaneObject.sanitize(input); + return ret.should.be.like(expectation); +}); + +test("case: {a:b: 'c'}", function() { + var expectation, input, ret; + input = { + a: { + b: 'c' + } + }; + expectation = [ + { + a: [ + { + b: ['c'] + } + ] + } + ]; + ret = objectToSaneObject.sanitize(input); + return ret.should.be.like(expectation); +}); + +test("case: {a:b: ['c', d: 'e']}", function() { + var expectation, input, ret; + input = { + a: { + b: [ + 'c', { + d: 'e' + } + ] + } + }; + expectation = [ + { + a: [ + { + b: [ + 'c', { + d: ['e'] + } + ] + } + ] + } + ]; + ret = objectToSaneObject.sanitize(input); + return ret.should.be.like(expectation); +}); diff --git a/node_modules/dom-converter/scripts/js/test/saneObjectToDom.js b/node_modules/dom-converter/scripts/js/test/saneObjectToDom.js new file mode 100644 index 000000000..2562dd26a --- /dev/null +++ b/node_modules/dom-converter/scripts/js/test/saneObjectToDom.js @@ -0,0 +1,73 @@ +// Generated by CoffeeScript 1.6.3 +var s2d; + +require('./_prepare'); + +s2d = mod('saneObjectToDom'); + +describe("_arrayToChildren()"); + +it("should work", function() { + var a, aChild, b, bChildren, node, ret, _i, _len; + ret = s2d._arrayToChildren([ + { + a: 'text' + }, { + 'b.someClass': ['b1', 'b2'] + }, { + c: [ + { + d: 'text' + }, { + e: [] + } + ] + } + ]); + ret.should.be.an('array'); + ret.should.have.length.of(3); + for (_i = 0, _len = ret.length; _i < _len; _i++) { + node = ret[_i]; + node.should.be.an('object'); + node.should.have.keys(['type', 'name', 'attribs', 'children', 'next', 'prev', 'parent']); + } + a = ret[0]; + a.children.should.be.an('array'); + a.children.should.have.length.of(1); + aChild = a.children[0]; + aChild.should.be.an('object'); + aChild.should.be.like({ + type: 'text', + data: 'text' + }); + expect(a.prev).to.equal(null); + expect(a.parent).to.equal(null); + b = ret[1]; + a.next.should.equal(b); + b.prev.should.equal(a); + b.attribs.should.be.like({ + "class": 'someClass' + }); + bChildren = b.children; + bChildren[0].should.be.like({ + type: 'text', + data: 'b1' + }); + bChildren[1].should.be.like({ + type: 'text', + data: 'b2' + }); + return ret.should.have.deep.property('[2].children[1].name', 'e'); +}); + +describe("_parseTag"); + +it("should work", function() { + return s2d._parseTag('tagName#id.c1.c2[a=b, d="1 2 3"]').should.be.like({ + name: 'tagName', + attribs: { + id: 'id', + "class": 'c1 c2' + } + }); +}); |