From ec6726efe86cefa7eae3091aeb3ca77228a2aba4 Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Thu, 29 Jun 2017 14:35:37 +0200
Subject: [PATCH] test for hiding elements when nesting is on

---
 .../graphics/AbstractImageGeneratorTest.java  | 39 ++++++++++++++++++-
 1 file changed, 38 insertions(+), 1 deletion(-)

diff --git a/converter-graphics/src/test/java/lcsb/mapviewer/converter/graphics/AbstractImageGeneratorTest.java b/converter-graphics/src/test/java/lcsb/mapviewer/converter/graphics/AbstractImageGeneratorTest.java
index d061d78bbb..93381deaa9 100644
--- a/converter-graphics/src/test/java/lcsb/mapviewer/converter/graphics/AbstractImageGeneratorTest.java
+++ b/converter-graphics/src/test/java/lcsb/mapviewer/converter/graphics/AbstractImageGeneratorTest.java
@@ -56,6 +56,43 @@ public class AbstractImageGeneratorTest extends GraphicsTestFunctions {
 		}
 	}
 
+	@Test
+	public void testDrawSimpleMapWithNesting() throws Exception {
+		try {
+			Graphics2D graphics = createGraphicsMock();
+
+			Model model = createSimpleModel();
+
+			AbstractImageGenerator gen = createAbstractImageGeneratorMock(graphics, model);
+			gen.setParams(new AbstractImageGenerator.Params().model(model).nested(true));
+			gen.draw();
+
+			//3 times for proteins and 4 times for reaction
+			verify(graphics, times(7)).draw(any());
+		} catch (Exception e) {
+			throw e;
+		}
+	}
+
+	@Test
+	public void testDrawSimpleMapWithWhenNestingHidesElement() throws Exception {
+		try {
+			Graphics2D graphics = createGraphicsMock();
+
+			Model model = createSimpleModel();
+			model.getElementByElementId("s1").setVisibilityLevel(2);
+
+			AbstractImageGenerator gen = createAbstractImageGeneratorMock(graphics, model);
+			gen.setParams(new AbstractImageGenerator.Params().model(model).nested(true).level(0));
+			gen.draw();
+
+			//2 times for proteins and 3 times for reaction
+			verify(graphics, times(5)).draw(any());
+		} catch (Exception e) {
+			throw e;
+		}
+	}
+
 	private Model createSimpleModel() {
 		Model model = new ModelFullIndexed(null);
 		model.setWidth(100);
@@ -106,7 +143,7 @@ public class AbstractImageGeneratorTest extends GraphicsTestFunctions {
 	private AbstractImageGenerator createAbstractImageGeneratorMock(Graphics2D graphics, Model model) throws Exception {
 		AbstractImageGenerator result = Mockito.mock(AbstractImageGenerator.class, Mockito.CALLS_REAL_METHODS);
 		result.setGraphics(graphics);
-		result.setParams(new AbstractImageGenerator.Params().model(model));
+		result.setParams(new AbstractImageGenerator.Params().model(model).level(0));
 		return result;
 
 	}
-- 
GitLab