X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/15f84ff3307f6afdfe57a155637202d7a629ac6a..7c4c5ee807a9700c1b26e91f0d1720e3c6fd9ec3:/src/wlxml/wlxml.test.js diff --git a/src/wlxml/wlxml.test.js b/src/wlxml/wlxml.test.js index c37b21f..af0e23b 100644 --- a/src/wlxml/wlxml.test.js +++ b/src/wlxml/wlxml.test.js @@ -27,6 +27,11 @@ describe('WLXMLDocument', function() { expect(node.getClass()).to.equal('class.subclass'); }); + it('returns its class hierarchy', function() { + var node = nodeFromXML('
'); + expect(node.getClassHierarchy()).to.eql(['', 'a', 'a.b', 'a.b.c']); + }); + it('returns unregistered attributes', function() { var testClasses = { 'testClass': { @@ -281,6 +286,15 @@ describe('WLXMLDocument', function() { expect(testClassNode.object.testMethod().sameNode(testClassNode)).to.equal(true, '1'); }); + it('allows adding non-function properties to an ElementNode of specific class', function() { + extension = {wlxmlClass: {test_class: {methods: { + testProp: 123 + }}}}; + doc.registerExtension(extension); + testClassNode = doc.root.contents()[1]; + expect(testClassNode.object.testProp).to.equal(123); + }); + it('allows adding transformation to an ElementNode of specific class', function() { extension = {wlxmlClass: {test_class: {transformations: { testTransformation: function() { return this; },