From f6e7573fbaee9c04322f4853fe9d2ccd080b5740 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Thu, 25 Jul 2019 18:45:21 +0200 Subject: [PATCH] single column data doesn't use columns --- .../services/utils/ColorSchemaReader.java | 20 ++++++++++--------- .../services/utils/ColorSchemaReaderTest.java | 12 +++++++++-- 2 files changed, 21 insertions(+), 11 deletions(-) diff --git a/service/src/main/java/lcsb/mapviewer/services/utils/ColorSchemaReader.java b/service/src/main/java/lcsb/mapviewer/services/utils/ColorSchemaReader.java index 7eb4e7430f..2f5ba0faa2 100644 --- a/service/src/main/java/lcsb/mapviewer/services/utils/ColorSchemaReader.java +++ b/service/src/main/java/lcsb/mapviewer/services/utils/ColorSchemaReader.java @@ -819,17 +819,19 @@ public class ColorSchemaReader { line = br.readLine(); } String[] columns = line.split("\t"); + if (columns.length > 1) { - Map<ColorSchemaColumn, Integer> schemaColumns = new HashMap<>(); - parseColumns(columns, schemaColumns, ColorSchemaType.GENERIC); - for (ColorSchemaColumn column : schemaColumns.keySet()) { - try { - Field f = ColorSchemaColumn.class.getField(column.name()); - if (column.getDepractedColumnName() != null || f.isAnnotationPresent(Deprecated.class)) { - result.add(column); + Map<ColorSchemaColumn, Integer> schemaColumns = new HashMap<>(); + parseColumns(columns, schemaColumns, ColorSchemaType.GENERIC); + for (ColorSchemaColumn column : schemaColumns.keySet()) { + try { + Field f = ColorSchemaColumn.class.getField(column.name()); + if (column.getDepractedColumnName() != null || f.isAnnotationPresent(Deprecated.class)) { + result.add(column); + } + } catch (NoSuchFieldException | SecurityException e) { + throw new InvalidStateException(e); } - } catch (NoSuchFieldException | SecurityException e) { - throw new InvalidStateException(e); } } } diff --git a/service/src/test/java/lcsb/mapviewer/services/utils/ColorSchemaReaderTest.java b/service/src/test/java/lcsb/mapviewer/services/utils/ColorSchemaReaderTest.java index 4592e44bb3..f58cdd4923 100644 --- a/service/src/test/java/lcsb/mapviewer/services/utils/ColorSchemaReaderTest.java +++ b/service/src/test/java/lcsb/mapviewer/services/utils/ColorSchemaReaderTest.java @@ -2,11 +2,10 @@ package lcsb.mapviewer.services.utils; import static org.junit.Assert.*; -import java.awt.*; +import java.awt.Color; import java.io.*; import java.nio.charset.StandardCharsets; import java.util.*; -import java.util.List; import org.apache.commons.io.output.ByteArrayOutputStream; import org.apache.logging.log4j.LogManager; @@ -16,6 +15,7 @@ import org.junit.*; import lcsb.mapviewer.commands.ColorExtractor; import lcsb.mapviewer.commands.ColorModelCommand; import lcsb.mapviewer.common.TextFileUtils; +import lcsb.mapviewer.model.cache.UploadedFileEntry; import lcsb.mapviewer.model.map.MiriamData; import lcsb.mapviewer.model.map.layout.*; import lcsb.mapviewer.model.map.model.Model; @@ -326,4 +326,12 @@ public class ColorSchemaReaderTest extends ServiceTestFunctions { assertNotNull(schemas.iterator().next().getModelName()); } + @Test + public void testGetDeprecatedColumns() throws Exception { + Layout overlay = new Layout(); + UploadedFileEntry file = new UploadedFileEntry(); + file.setFileContent("blabla\nbasd\n".getBytes("UTF-8")); + overlay.setInputData(file); + assertEquals(0, reader.getDeprecatedColumns(overlay).size()); + } } -- GitLab