From 732d5d05c069dfe1d379ed3d83c3975ef4771837 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Sun, 11 Dec 2016 18:13:10 +0100 Subject: [PATCH] getReactions follows promises in a better way --- frontend-js/src/main/js/ServerConnector.js | 25 +++++++++++-------- .../src/test/js/map/data/MapModel-test.js | 19 +++++++------- 2 files changed, 24 insertions(+), 20 deletions(-) diff --git a/frontend-js/src/main/js/ServerConnector.js b/frontend-js/src/main/js/ServerConnector.js index 2389e7ae83..389d0b7d5f 100644 --- a/frontend-js/src/main/js/ServerConnector.js +++ b/frontend-js/src/main/js/ServerConnector.js @@ -971,17 +971,20 @@ ServerConnector.getOverlayById = function(layoutId, projectId) { ServerConnector.getReactions = function(reactionIds, projectId, columns) { var self = this; return new Promise(function(resolve, reject) { - self.getProjectId(projectId).then(function(projectId) { - self.getToken().then(function(token) { - self.readFile(self.getReactionsUrl(reactionIds, projectId, token, columns)).then(function(content) { - var result = []; - for (var i = 0; i < content.length; i++) { - result.push(new Reaction(content[i])) - } - resolve(result); - }, reject); - }, reject); - }, reject); + self.getProjectId(projectId).then(function(result) { + projectId = result; + return self.getToken(); + }).then(function(token) { + return self.readFile(self.getReactionsUrl(reactionIds, projectId, token, columns)); + }).then(function(content) { + var result = []; + for (var i = 0; i < content.length; i++) { + result.push(new Reaction(content[i])) + } + resolve(result); + }).catch(function(exception){ + reject(exception); + }); }); }; diff --git a/frontend-js/src/test/js/map/data/MapModel-test.js b/frontend-js/src/test/js/map/data/MapModel-test.js index 5a698f55d3..2266e69b68 100644 --- a/frontend-js/src/test/js/map/data/MapModel-test.js +++ b/frontend-js/src/test/js/map/data/MapModel-test.js @@ -106,25 +106,26 @@ describe('MapModel', function() { assert.equal(logger.getWarnings().length, 1); }); - it("addReaction(Reaction) 1", function(done) { + it("getReactionById 1", function() { var model = helper.createModel(); var reaction = helper.createReaction(); - model.getReactionById(reaction.getId()).then(function(result){ + return model.getReactionById(reaction.getId()).then(function(result){ assert.equal(null, result); }).catch(function(exception) { - assert.ok(exception); + //check if this is exception about not finding file + logger.debug(exception); + assert.ok(exception.path); model.addReaction(reaction); - model.getReactionById(reaction.getId()).then(function(result){ - assert.equal(reaction, result); - done(); - }); - }); + return model.getReactionById(reaction.getId()); + }).then(function(result){ + assert.equal(reaction, result); + });; }); - it("addReaction(Reaction) 2", function() { + it("getReactionById 2", function() { var model = helper.createModel(); var reaction = helper.createReaction(); -- GitLab