X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/e3f4ff223c5acd7cf97b6a9ba1cdd83111dba63b..refs/heads/exercise_assign:/src/wlxml/extensions/edumed/edumed.test.js diff --git a/src/wlxml/extensions/edumed/edumed.test.js b/src/wlxml/extensions/edumed/edumed.test.js index c039f0d..a3c9b89 100644 --- a/src/wlxml/extensions/edumed/edumed.test.js +++ b/src/wlxml/extensions/edumed/edumed.test.js @@ -64,6 +64,57 @@ describe('Setting answer', function() { }); }); +describe('Assign exercise', function() { + /* jshint multistr:true */ + it('assigns source to destination', function() { + var doc = getDocumentFromXML('\ +
\ +
\ +
Element 1
\ +
Element 2
\ +
\ +
\ +
Kategoria 1
\ +
Kategoria 2
\ +
\ +
'), + exercise = doc.root, + element = exercise.object.getSourceItems()[1], + categories = exercise.object.getDestinationItems(), + elementNode = exercise.contents()[0].contents()[1]; + + element.assignTo(categories[0]); + expect(elementNode.getAttr('answer')).to.equal('kat1'); + expect(element.isAssignedTo(categories[0])).to.equal(true); + + element.assignTo(categories[1]); + expect(elementNode.getAttr('answer')).to.equal('kat1,kat2'); + expect(element.isAssignedTo(categories[1])).to.equal(true); + }); + it('removes assignment between source and destination', function() { + var doc = getDocumentFromXML('\ +
\ +
\ +
Element 1
\ +
Element 2
\ +
\ +
\ +
Kategoria 1
\ +
Kategoria 2
\ +
\ +
'), + exercise = doc.root, + element = exercise.object.getSourceItems()[1], + categories = exercise.object.getDestinationItems(), + elementNode = exercise.contents()[0].contents()[1]; + + element.removeFrom(categories[0]); + expect(elementNode.getAttr('answer')).to.equal('kat2'); + + element.removeFrom(categories[1]); + expect(elementNode.getAttr('answer')).to.equal(undefined, 'empty'); + }); +});