Remove old license headers
[gpl/argeo-slc.git] / org.argeo.slc.runtime / src / org / argeo / slc / runtime / test / ContextUtils.java
index 663e1ed465a5957e02af937abaf30da7eae7efcd..97d7305c1e3ad774e16c707e29c7867cb0852730 100644 (file)
-/*\r
- * Copyright (C) 2007-2012 Argeo GmbH\r
- *\r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- *         http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- */\r
-package org.argeo.slc.runtime.test;\r
-\r
-import java.util.Map;\r
-import java.util.TreeMap;\r
-\r
-import org.apache.commons.logging.Log;\r
-import org.apache.commons.logging.LogFactory;\r
-import org.argeo.slc.test.TestResult;\r
-import org.argeo.slc.test.TestStatus;\r
-import org.argeo.slc.test.context.ContextAware;\r
-import org.argeo.slc.test.context.ParentContextAware;\r
-\r
-/** Utilities for comparing and synchronising contexts. */\r
-public class ContextUtils {\r
-       private final static Log log = LogFactory.getLog(ContextUtils.class);\r
-\r
-       public static void compareReachedExpected(ContextAware contextAware,\r
-                       TestResult testResult) {\r
-               for (String key : contextAware.getExpectedValues().keySet()) {\r
-\r
-                       // Compare expected values with reached ones\r
-                       Object expectedValue = contextAware.getExpectedValues().get(key);\r
-\r
-                       if (expectedValue.toString().equals(\r
-                                       contextAware.getContextSkipFlag())) {\r
-                               if (log.isDebugEnabled())\r
-                                       log.debug("Skipped check for key '" + key + "'");\r
-                               continue;\r
-                       }\r
-\r
-                       if (contextAware.getValues().containsKey(key)) {\r
-                               Object reachedValue = contextAware.getValues().get(key);\r
-\r
-                               if (expectedValue.equals(contextAware.getContextAnyFlag())) {\r
-                                       testResult.addResultPart(new SimpleResultPart(\r
-                                                       TestStatus.PASSED, "Expected any value for key '"\r
-                                                                       + key + "'"));\r
-                               } else if (expectedValue.equals(reachedValue)) {\r
-                                       testResult.addResultPart(new SimpleResultPart(\r
-                                                       TestStatus.PASSED, "Values matched for key '" + key\r
-                                                                       + "'"));\r
-                               } else {\r
-                                       testResult.addResultPart(new SimpleResultPart(\r
-                                                       TestStatus.FAILED, "Mismatch for key '" + key\r
-                                                                       + "': expected '" + expectedValue\r
-                                                                       + "' but reached '" + reachedValue + "'"));\r
-                               }\r
-                       } else {\r
-                               testResult.addResultPart(new SimpleResultPart(\r
-                                               TestStatus.FAILED, "No value reached for key '" + key\r
-                                                               + "'"));\r
-                       }\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Makes sure that all children and sub-children of parent share the same\r
-        * maps for values and expected values.\r
-        */\r
-       public static void synchronize(ParentContextAware parent) {\r
-               Map<String, Object> expectedValuesCommon = new TreeMap<String, Object>(\r
-                               parent.getExpectedValues());\r
-               synchronize(parent, expectedValuesCommon);\r
-               if (log.isDebugEnabled())\r
-                       log.debug("Synchronized context " + parent);\r
-\r
-       }\r
-\r
-       private static void synchronize(ParentContextAware parent,\r
-                       Map<String, Object> expectedValuesCommon) {\r
-               for (ContextAware child : parent.getChildContexts()) {\r
-                       // Values\r
-                       putNotContained(parent.getValues(), child.getValues());\r
-                       child.setValues(parent.getValues());\r
-\r
-                       // Expected Values\r
-                       // Expected values reference is not overridden: each child has its\r
-                       // own expected values map.\r
-                       overrideContained(expectedValuesCommon, child.getExpectedValues());\r
-\r
-                       // Creates a new Map in order not to disturb other context using the\r
-                       // same keys\r
-                       Map<String, Object> expectedValuesCommonChild = new TreeMap<String, Object>(\r
-                                       expectedValuesCommon);\r
-                       putNotContained(expectedValuesCommonChild,\r
-                                       child.getExpectedValues());\r
-\r
-                       if (child instanceof ParentContextAware) {\r
-                               // Recursive sync\r
-                               synchronize((ParentContextAware) child,\r
-                                               expectedValuesCommonChild);\r
-                       }\r
-               }\r
-\r
-       }\r
-\r
-       /**\r
-        * Put into common map the values from child map which are not already\r
-        * defined in common map.\r
-        */\r
-       public static void putNotContained(Map<String, Object> commonMap,\r
-                       Map<String, Object> childMap) {\r
-               for (String key : childMap.keySet()) {\r
-                       if (!commonMap.containsKey(key)) {\r
-                               commonMap.put(key, childMap.get(key));\r
-                       }\r
-               }\r
-       }\r
-\r
-       /** Overrides child map values with the values already set in common map */\r
-       public static void overrideContained(Map<String, Object> commonMap,\r
-                       Map<String, Object> childMap) {\r
-               for (String key : childMap.keySet()) {\r
-                       if (commonMap.containsKey(key)) {\r
-                               childMap.put(key, commonMap.get(key));\r
-                       }\r
-               }\r
-       }\r
-\r
-       /** Makes sure this cannot be instantiated. */\r
-       private ContextUtils() {\r
-\r
-       }\r
-}\r
+package org.argeo.slc.runtime.test;
+
+import java.util.Map;
+import java.util.TreeMap;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.argeo.slc.test.TestResult;
+import org.argeo.slc.test.TestStatus;
+import org.argeo.slc.test.context.ContextAware;
+import org.argeo.slc.test.context.ParentContextAware;
+
+/** Utilities for comparing and synchronising contexts. */
+public class ContextUtils {
+       private final static Log log = LogFactory.getLog(ContextUtils.class);
+
+       public static void compareReachedExpected(ContextAware contextAware,
+                       TestResult testResult) {
+               for (String key : contextAware.getExpectedValues().keySet()) {
+
+                       // Compare expected values with reached ones
+                       Object expectedValue = contextAware.getExpectedValues().get(key);
+
+                       if (expectedValue.toString().equals(
+                                       contextAware.getContextSkipFlag())) {
+                               if (log.isDebugEnabled())
+                                       log.debug("Skipped check for key '" + key + "'");
+                               continue;
+                       }
+
+                       if (contextAware.getValues().containsKey(key)) {
+                               Object reachedValue = contextAware.getValues().get(key);
+
+                               if (expectedValue.equals(contextAware.getContextAnyFlag())) {
+                                       testResult.addResultPart(new SimpleResultPart(
+                                                       TestStatus.PASSED, "Expected any value for key '"
+                                                                       + key + "'"));
+                               } else if (expectedValue.equals(reachedValue)) {
+                                       testResult.addResultPart(new SimpleResultPart(
+                                                       TestStatus.PASSED, "Values matched for key '" + key
+                                                                       + "'"));
+                               } else {
+                                       testResult.addResultPart(new SimpleResultPart(
+                                                       TestStatus.FAILED, "Mismatch for key '" + key
+                                                                       + "': expected '" + expectedValue
+                                                                       + "' but reached '" + reachedValue + "'"));
+                               }
+                       } else {
+                               testResult.addResultPart(new SimpleResultPart(
+                                               TestStatus.FAILED, "No value reached for key '" + key
+                                                               + "'"));
+                       }
+               }
+       }
+
+       /**
+        * Makes sure that all children and sub-children of parent share the same
+        * maps for values and expected values.
+        */
+       public static void synchronize(ParentContextAware parent) {
+               Map<String, Object> expectedValuesCommon = new TreeMap<String, Object>(
+                               parent.getExpectedValues());
+               synchronize(parent, expectedValuesCommon);
+               if (log.isDebugEnabled())
+                       log.debug("Synchronized context " + parent);
+
+       }
+
+       private static void synchronize(ParentContextAware parent,
+                       Map<String, Object> expectedValuesCommon) {
+               for (ContextAware child : parent.getChildContexts()) {
+                       // Values
+                       putNotContained(parent.getValues(), child.getValues());
+                       child.setValues(parent.getValues());
+
+                       // Expected Values
+                       // Expected values reference is not overridden: each child has its
+                       // own expected values map.
+                       overrideContained(expectedValuesCommon, child.getExpectedValues());
+
+                       // Creates a new Map in order not to disturb other context using the
+                       // same keys
+                       Map<String, Object> expectedValuesCommonChild = new TreeMap<String, Object>(
+                                       expectedValuesCommon);
+                       putNotContained(expectedValuesCommonChild,
+                                       child.getExpectedValues());
+
+                       if (child instanceof ParentContextAware) {
+                               // Recursive sync
+                               synchronize((ParentContextAware) child,
+                                               expectedValuesCommonChild);
+                       }
+               }
+
+       }
+
+       /**
+        * Put into common map the values from child map which are not already
+        * defined in common map.
+        */
+       public static void putNotContained(Map<String, Object> commonMap,
+                       Map<String, Object> childMap) {
+               for (String key : childMap.keySet()) {
+                       if (!commonMap.containsKey(key)) {
+                               commonMap.put(key, childMap.get(key));
+                       }
+               }
+       }
+
+       /** Overrides child map values with the values already set in common map */
+       public static void overrideContained(Map<String, Object> commonMap,
+                       Map<String, Object> childMap) {
+               for (String key : childMap.keySet()) {
+                       if (commonMap.containsKey(key)) {
+                               childMap.put(key, commonMap.get(key));
+                       }
+               }
+       }
+
+       /** Makes sure this cannot be instantiated. */
+       private ContextUtils() {
+
+       }
+}