svn commit: r16304 - trunk/src/argouml-app/tests/org/argouml/model/CheckUMLModelHelper.java

Tom Morris <[email protected]>
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: tfmorris
Date: 2008-12-07 14:29:12-0800
New Revision: 16304

Modified:
   trunk/src/argouml-app/tests/org/argouml/model/CheckUMLModelHelper.java

Log:
Use Java 5 for loops

Modified: trunk/src/argouml-app/tests/org/argouml/model/CheckUMLModelHelper.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/tests/org/argouml/model/CheckUMLModelHelper.java?view=diff&pathrev=16304&r1=16303&r2=16304
==============================================================================
--- trunk/src/argouml-app/tests/org/argouml/model/CheckUMLModelHelper.java	(original)
+++ trunk/src/argouml-app/tests/org/argouml/model/CheckUMLModelHelper.java	2008-12-07 14:29:12-0800
@@ -26,7 +26,7 @@
 
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
-import java.util.List;
+import java.util.Arrays;
 
 import junit.framework.TestCase;
 
@@ -60,9 +60,9 @@
 	Class c = mo.getClass();
 
 	// Call methods that exists for all objects and that always return
-	// something meaningfull.
-	TestCase.assertTrue("toString() corrupt in " + c,
-		      mo.toString() != null);
+	// something meaningful
+	TestCase.assertNotNull("toString() corrupt in " + c,
+		      mo.toString());
         
 	Model.getUmlFactory().delete(mo);
         Model.getPump().flushModelEvents();
@@ -85,14 +85,14 @@
 	Class c = mo.getClass();
 
 	// Call methods that exists for all objects and that always return
-	// something meaningfull.
-	TestCase.assertTrue("toString() corrupt in " + c,
-		      	    mo.toString() != null);
-	TestCase.assertTrue("getUMLClassName() corrupt in " + c,
-	        Model.getFacade().getUMLClassName(mo) != null);
-	TestCase.assertTrue(
+	// something meaningful
+	TestCase.assertNotNull("toString() corrupt in " + c,
+		      	    mo.toString());
+	TestCase.assertNotNull("getUMLClassName() corrupt in " + c,
+	        Model.getFacade().getUMLClassName(mo));
+	TestCase.assertEquals(
 	        "getUMLClassName() different from expected in " + c,
-	        name.equals(Model.getFacade().getUMLClassName(mo)));
+	        name, Model.getFacade().getUMLClassName(mo));
 
 	Model.getUmlFactory().delete(mo);
         Model.getPump().flushModelEvents();
@@ -101,6 +101,12 @@
                 Model.getUmlFactory().isRemoved(mo));
     }
 
+    public static void createAndRelease(Object factory,
+            String[] names,
+            Object[] arguments) {
+       createAndRelease(factory, Arrays.asList(names), arguments);
+    }
+    
     /**
      * Create a UML modelelement (i.e. check if a creation function exists).
      * Then deletes it, looses the reference and then checks that
@@ -111,7 +117,7 @@
      * @param arguments the arguments of the UML elements
      */
     public static void createAndRelease(Object factory,
-					String[] names,
+					Iterable<String> names,
 					Object[] arguments) {
 	Class [] argTypes = new Class[arguments.length];
 	for (int i = 0; i < arguments.length; i++) {
@@ -125,22 +131,22 @@
         String [] exprArgs = {"body text", "language text"};
         Class[] exprArgTypes = {String.class, String.class};
 
-	for (int i = 0; i < names.length; i++) {
+	for (String name : names) {
             Class[] types;
             Object[] args;
-	    if (names[i] == null) {
+	    if (name == null) {
 	        continue;
-	    } else if (names[i].startsWith("Multiplicity")) {
+	    } else if (name.startsWith("Multiplicity")) {
                 types = multArgTypes;
                 args = multArgs;
-            } else if (names[i].endsWith("Expression")) {
+            } else if (name.endsWith("Expression")) {
                 types = exprArgTypes;
                 args = exprArgs;
             } else {
                 types = argTypes;
                 args = arguments;
             }
-            String methodName = "create" + names[i];
+            String methodName = "create" + name;
 	    Method createMethod;
 
 	    // Find the create method in the offical API
@@ -155,7 +161,7 @@
 
             
             Method isAMethod;
-            String isAMethodName = "isA" + names[i];
+            String isAMethodName = "isA" + name;
             Object facade = Model.getFacade();
             try {
                 // Now get the factory implementation method to be invoked
@@ -181,7 +187,7 @@
                             }));
                 
                     deleteAndRelease(
-                            createMethod.invoke(factory, args), names[i]);
+                            createMethod.invoke(factory, args), name);
 		} catch (ClassCastException e) {
 		    // Here it is another object sent to the test.
 		    deleteAndRelease(createMethod.invoke(factory, args));
@@ -190,11 +196,11 @@
 		    deleteAndRelease(createMethod.invoke(factory, args));
 		}
 	    } catch (IllegalAccessException e) {
-		TestCase.fail("Method create" + names[i]
+		TestCase.fail("Method create" + name
 			      + " in " + factory + " cannot be called");
 		return;
 	    } catch (InvocationTargetException e) {
-		TestCase.fail("Method create" + names[i]
+		TestCase.fail("Method create" + name
 			      + " in " + factory + " throws an exception.");
 		return;
 	    }
@@ -276,17 +282,11 @@
      *            the UML elements to test
      */
     public static void createAndRelease(Object f, String[] names) {
-	Object[] noarguments = {
-	};
-	createAndRelease(f, names, noarguments);
+	createAndRelease(f, Arrays.asList(names));
     }
 
-    public static void createAndRelease(Object f, List<String>names) {
-        Object[] noarguments = {
-        };
-        String[] elementNames = new String[names.size()];
-        names.toArray(elementNames);
-        createAndRelease(f, elementNames, noarguments);
+    public static void createAndRelease(Object f, Iterable<String> names) {
+        createAndRelease(f, names, new Object[] {});
     }
     
     /**
@@ -297,8 +297,8 @@
      * @param names the names of the modelelements
      */
     public static void hasDeleteMethod(Object f, String[] names) {
-        for (int i = 0; i < names.length; i++) {
-            String methodName = "delete" + names[i];
+        for (String name : names) {
+            String methodName = "delete" + name;
             try {
                 f.getClass().getDeclaredMethod(methodName,
                         new Class[] {Object.class});
@@ -320,22 +320,23 @@
      * @param factory the modelfactory that should contain the create function
      * @param names the metamodel class names
      */
-    public static void metaModelNameCorrect(Object factory, String[] names) {
+    public static void metaModelNameCorrect(Object factory, 
+            Iterable<String> names) {
         try {
-            for (int i = 0; i < names.length; i++) {
+            for (String name : names) {
                 Method m = findMethod(factory.getClass(), Factory.class,
-                        "create" + names[i], new Class[] {});
+                        "create" + name, new Class[] {});
                 TestCase.assertNotNull("Failed to find method create"
-                        + names[i], m);
+                        + name, m);
                 Object element = m.invoke(factory, new Object[] {});
                 TestCase.assertTrue("Not a UML Element", 
                         Model.getFacade().isAUMLElement(element));
                 String metaName =
                         Model.getExtensionMechanismsHelper().getMetaModelName(
                                 element);
-                TestCase.assertTrue(
-                        "not a valid metaModelName " + names[i], 
-                        metaName.equals(names[i]));
+                TestCase.assertEquals(
+                        "not a valid metaModelName " + name, 
+                        metaName, name);
             }
         } catch (Exception ex) {
             ex.printStackTrace();
@@ -346,8 +347,8 @@
     }
 
     public static void metaModelNameCorrect(Object factory, 
-            List<String> names) {
-        metaModelNameCorrect(factory, names.toArray(new String[names.size()]));
+            String[] names) {
+        metaModelNameCorrect(factory, Arrays.asList(names));
     }
     
     /**
@@ -357,18 +358,18 @@
      *          all the given metamodel element names
      * @param names the metamodel element names
      */
-    public static void isValidStereoType(Object f, String[] names) {
+    public static void isValidStereoType(Object f, Iterable<String> names) {
         try {
             Object ns = Model.getModelManagementFactory().createPackage();
             Object clazz = Model.getCoreFactory().buildClass(ns);
             Object stereo1 =
 		Model.getExtensionMechanismsFactory()
                     .buildStereotype(clazz, "test1", ns);
-            for (int i = 0; i < names.length; i++) {
+            for (String name : names) {
                 Method m = findMethod(f.getClass(), Factory.class,
-                        "create" + names[i], new Class[] {});
+                        "create" + name, new Class[] {});
                 if (m == null) {
-                    TestCase.fail("Failed to find method create" + names[i]);
+                    TestCase.fail("Failed to find method create" + name);
                 }
                 Object base = m.invoke(f, new Object[] {});
                 if (Model.getFacade().isAModelElement(base)) {
@@ -407,7 +408,7 @@
         }
     }
     
-    public static void isValidStereoType(Object f, List<String> names) {
-        isValidStereoType(f, names.toArray(new String[names.size()]));
+    public static void isValidStereoType(Object f, String[] names) {
+        isValidStereoType(f, Arrays.asList(names));
     }
 }

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=980938

To unsubscribe from this discussion, e-mail: [[email protected]].
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.