From 869ee444e4bacb5e2cc46b0e1877eecb2d3c598d Mon Sep 17 00:00:00 2001
From: Nikolaus Huber <nikolaus.huber@uni-wuerzburg.de>
Date: Wed, 27 Feb 2013 09:39:20 +0000
Subject: [PATCH] git-svn-id:
 https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/code/DMM/trunk@10459
 9e42b895-fcda-4063-8a3b-11be15eb1bbd

---
 .../util/DmmModelActionHelperTest.java        | 47 +++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/edu.kit.ipd.descartes.adaptation.test/src/edu/kit/ipd/descartes/adaptation/util/DmmModelActionHelperTest.java b/edu.kit.ipd.descartes.adaptation.test/src/edu/kit/ipd/descartes/adaptation/util/DmmModelActionHelperTest.java
index d727fe03..2f93bc70 100644
--- a/edu.kit.ipd.descartes.adaptation.test/src/edu/kit/ipd/descartes/adaptation/util/DmmModelActionHelperTest.java
+++ b/edu.kit.ipd.descartes.adaptation.test/src/edu/kit/ipd/descartes/adaptation/util/DmmModelActionHelperTest.java
@@ -36,6 +36,7 @@ public class DmmModelActionHelperTest extends AbstractTest {
 
     private static final double MAX_VALUE = 4.0d;
     private static final String CANDIDATE = "Candidate";
+    private static final double MIN_VALUE = 2.0d;
     AdaptableEntity aEntity = null;
     AdaptableEntity aEntity2 = null;
     RuntimeEnvironment vm = ResourcelandscapeFactory.eINSTANCE.createRuntimeEnvironment();
@@ -155,6 +156,52 @@ public class DmmModelActionHelperTest extends AbstractTest {
         assertTrue(EcoreUtil.equals(re2, res));
     }
     
+    @Test
+    public void testQueryNotEmptyRuntimeEnvironment() {
+        DistributedDataCenter testDdc = ResourcelandscapeFactory.eINSTANCE.createDistributedDataCenter();
+        DataCenter dc1 = ResourcelandscapeFactory.eINSTANCE.createDataCenter();
+        testDdc.getConsistsOf().add(dc1);
+        ComputingInfrastructure ci1 = ResourcelandscapeFactory.eINSTANCE.createComputingInfrastructure();
+        dc1.getContains().add(ci1);
+        ContainerTemplate template = ContainerrepositoryFactory.eINSTANCE.createContainerTemplate();
+        RuntimeEnvironment re1 = ResourcelandscapeFactory.eINSTANCE.createRuntimeEnvironment();
+        RuntimeEnvironment re2 = ResourcelandscapeFactory.eINSTANCE.createRuntimeEnvironment();
+        RuntimeEnvironment re3 = ResourcelandscapeFactory.eINSTANCE.createRuntimeEnvironment();
+        ci1.getContains().add(re1);
+        ci1.getContains().add(re2);
+        ci1.getContains().add(re3);
+        re1.setTemplate(template);
+        re2.setTemplate(template);
+        re3.setTemplate(template);
+        re1.setName("RE1");
+        re2.setName("RE2");
+        re3.setName("RE3-NO_CONFIG");
+        
+        ActiveResourceSpecification active1 = ResourceconfigurationFactory.eINSTANCE.createActiveResourceSpecification();
+        re1.getConfigSpec().add(active1);
+        ActiveResourceSpecification active2 = ResourceconfigurationFactory.eINSTANCE.createActiveResourceSpecification();
+        re2.getConfigSpec().add(active2);
+        
+        ProcessingResourceSpecification procSpec1 = ResourceconfigurationFactory.eINSTANCE.createProcessingResourceSpecification();
+        NumberOfParallelProcessingUnits nr1 = ResourceconfigurationFactory.eINSTANCE.createNumberOfParallelProcessingUnits();
+        nr1.setNumber(4);
+        procSpec1.setNrOfParProcUnits(nr1);
+        active1.getProcessingResourceSpecifications().add(procSpec1);
+        
+        ProcessingResourceSpecification procSpec2 = ResourceconfigurationFactory.eINSTANCE.createProcessingResourceSpecification();
+        NumberOfParallelProcessingUnits nr2 = ResourceconfigurationFactory.eINSTANCE.createNumberOfParallelProcessingUnits();
+        nr2.setNumber(2);
+        procSpec2.setNrOfParProcUnits(nr2);
+        active2.getProcessingResourceSpecifications().add(procSpec2);
+        
+        RuntimeEnvironment res = DmmModelActionHelper.queryNotEmptyRuntimeEnvironment(re1, MIN_VALUE);
+        assertTrue(EcoreUtil.equals(re1, res));
+        
+        ci1.getContains().remove(re1);
+        res = DmmModelActionHelper.queryNotEmptyRuntimeEnvironment(re2, MIN_VALUE);
+        assertTrue(res == null);
+    }
+    
     @Test 
     public void testQueryContainersWithSimilarSpecs() {
         DistributedDataCenter testDdc = ResourcelandscapeFactory.eINSTANCE.createDistributedDataCenter();
-- 
GitLab