From 83e55f27551d1cfc0144cedbd1c106fadba7d301 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Mon, 12 Jun 2017 14:39:46 +0200 Subject: [PATCH] creating genetic div with no data doesn't throw an error --- .../src/main/js/map/window/AliasInfoWindow.js | 4 +-- .../js/map/window/AliasInfoWindow-test.js | 26 +++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/frontend-js/src/main/js/map/window/AliasInfoWindow.js b/frontend-js/src/main/js/map/window/AliasInfoWindow.js index 1236a48328..f2e038314f 100644 --- a/frontend-js/src/main/js/map/window/AliasInfoWindow.js +++ b/frontend-js/src/main/js/map/window/AliasInfoWindow.js @@ -270,7 +270,7 @@ AliasInfoWindow.prototype.createGenomicDiv = function() { return Promise.each( self.layoutAliases, function(data) { - if (data !== null && data.getType() === LayoutAlias.GENETIC_VARIANT) { + if (data !== null && data !== undefined && data.getType() === LayoutAlias.GENETIC_VARIANT) { geneticInformation = true; return Promise.each(data.getGeneVariants(), function(variant) { return self.getCustomMap().getReferenceGenome(variant.getReferenceGenomeType(), @@ -318,7 +318,7 @@ AliasInfoWindow.prototype.createGenomicDiv = function() { } return Promise.each(self.layoutAliases, function(data, i) { globalGeneVariants[i] = []; - if (data !== null && data.getType() === LayoutAlias.GENETIC_VARIANT) { + if (data !== null && data !== undefined && data.getType() === LayoutAlias.GENETIC_VARIANT) { var geneVariants = data.getGeneVariants(); for (var j = 0; j < geneVariants.length; j++) { var variant = geneVariants[j]; diff --git a/frontend-js/src/test/js/map/window/AliasInfoWindow-test.js b/frontend-js/src/test/js/map/window/AliasInfoWindow-test.js index aaa64afa12..dfd2fcbd98 100644 --- a/frontend-js/src/test/js/map/window/AliasInfoWindow-test.js +++ b/frontend-js/src/test/js/map/window/AliasInfoWindow-test.js @@ -164,6 +164,32 @@ describe('AliasInfoWindow', function() { }); + it("createGeneticsDiv with no genetic data", function() { + var map; + + var win; + var aliasId = 329173; + + return ServerConnector.getProject().then(function(project) { + map = helper.createCustomMap(project); + var overlay = new LayoutData(18077, "xxx"); + return overlay.init(); + }).then(function() { + return map.getModel().getAliasById(aliasId); + }).then(function(alias) { + win = new AliasInfoWindow(alias, map); + return win.init(); + }).then(function() { + win.layoutAliases = [ undefined ]; + return win.createGenomicDiv(); + }).then(function(div) { + assert.ok(div); + assert.ok(div.innerHTML.indexOf("No reference genome data available on minerva platform") === -1); + win.destroy(); + }); + + }); + it("createGeneticsDivForUnknownOrganism", function() { var map; var overlay; -- GitLab