Revision: 19631
          http://sourceforge.net/p/gate/code/19631
Author:   markagreenwood
Date:     2016-10-05 06:50:49 +0000 (Wed, 05 Oct 2016)
Log Message:
-----------
more tests of the java compiler, but these are now in ANNIE where the impl 
lives rather than in the core

Modified Paths:
--------------
    gate/branches/sawdust2/plugins/ANNIE/pom.xml
    
gate/branches/sawdust2/plugins/ANNIE/src/main/java/gate/util/compilers/Eclipse.java

Added Paths:
-----------
    gate/branches/sawdust2/plugins/ANNIE/src/test/java/gate/util/
    gate/branches/sawdust2/plugins/ANNIE/src/test/java/gate/util/TestJavac.java

Removed Paths:
-------------
    gate/branches/sawdust2/gate-core/.settings/
    gate/branches/sawdust2/gate-core/src/test/disabled/gate/util/TestJavac.java

Deleted: 
gate/branches/sawdust2/gate-core/src/test/disabled/gate/util/TestJavac.java
===================================================================
--- gate/branches/sawdust2/gate-core/src/test/disabled/gate/util/TestJavac.java 
2016-10-05 06:48:43 UTC (rev 19630)
+++ gate/branches/sawdust2/gate-core/src/test/disabled/gate/util/TestJavac.java 
2016-10-05 06:50:49 UTC (rev 19631)
@@ -1,128 +0,0 @@
-/*
- *
- *  Copyright (c) 1995-2012, The University of Sheffield. See the file
- *  COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
- *
- *  This file is part of GATE (see http://gate.ac.uk/), and is free
- *  software, licenced under the GNU Library General Public License,
- *  Version 2, June 1991 (in the distribution as file licence.html,
- *  and also available at http://gate.ac.uk/gate/licence.html).
- *
- *  Valentin Tablan, 26/Feb/2002
- *
- *  $Id$
- */
-
-package gate.util;
-
-import java.lang.reflect.Method;
-import java.util.HashMap;
-import java.util.Map;
-
-import junit.framework.*;
-
-import gate.Gate;
-
-public class TestJavac extends TestCase{
-  /** Construction */
-  public TestJavac(String name) { super(name); }
-
- /** Fixture set up */
-  @Override
-  public void setUp() {
-  } // setUp
-
-  /** Test suite routine for the test runner */
-  public static Test suite() {
-    return new TestSuite(TestJavac.class);
-  } // suite
-
- /** Jdk compiler */
-  public void testCompiler() throws Exception {
-
-    String nl = Strings.getNl();
-    String javaSource =
-      "package foo.bar;" + nl +
-      "public class Outer {" + nl +
-      "//let's make an inner class " + nl +
-      " class Adder{" + nl +
-      " public int inc(int i){" + nl +
-      "   return i + 1;" + nl +
-      " }//inc(int)" + nl +
-      " }//class Adder" + nl +
-      " //let's make another inner class" + nl +
-      " class Deccer{" + nl +
-      " public int dec(int i){" + nl +
-      "   return i - 1;" + nl +
-      " }//dec(int)" + nl +
-      " }//clas Deccer" + nl +
-      " //some public methods" + nl +
-      " public int inc(int i){" + nl +
-      "   return new Adder().inc(i);" + nl +
-      " }" + nl +
-      " public int dec(int i){" + nl +
-      "   return new Deccer().dec(i);" + nl +
-      " }" + nl +
-      " }//class Outer" + nl;
-
-      //load the class
-      Map<String,String> sources = new HashMap<String,String>();
-      sources.put("foo.bar.Outer", javaSource);
-      Javac.loadClasses(sources, Gate.getClassLoader());
-      //try to access the class
-      Class<?> testClass = Gate.getClassLoader().loadClass("foo.bar.Outer");
-      assertNotNull("Could not find decalred class", testClass);
-      Object testInstance = testClass.newInstance();
-      assertNotNull("Could not instantiate declared class", testInstance);
-      Method testMethod =  testClass.getDeclaredMethod(
-                                          "inc",
-                                          new Class[]{int.class});
-      assertNotNull("Could not find declared method", testMethod);
-      Object result = testMethod.invoke(testInstance,
-                                        new Object[]{new Integer(1)});
-      assertEquals("Invalid result", result, new Integer(2));
-
-      testMethod =  testClass.getDeclaredMethod(
-                                          "dec",
-                                          new Class[]{int.class});
-      assertNotNull("Could not find declared method", testMethod);
-      result = testMethod.invoke(testInstance, new Object[]{new Integer(2)});
-      assertEquals("Invalid result", result, new Integer(1));
-  }
-
-  public void testCompileError() throws Exception {
-    System.err.println("Testing for a compile error:");
-    String nl = Strings.getNl();
-    String javaSource =
-        "package foo.bar;" + nl +
-        "public class X {" + nl +
-        " //some public methods" + nl +
-        " public void foo(){" + nl +
-        " String nullStr = null;" + nl +
-        "// This should cause a compile error:" + nl +
-        " nullStr = 123;" + nl +
-        "} " + nl +
-        " " + nl +
-        " " + nl +
-        " }//class Outer" + nl;
-
-    //load the class
-    Map<String,String> sources = new HashMap<String,String>();
-    sources.put("foo.bar.X", javaSource);
-    boolean gotException = false;
-    try {
-      Javac.loadClasses(sources,Gate.getClassLoader());
-    }
-    catch (GateException ge) {
-      gotException = true;
-    }
-    finally {
-//      newSyserr.flush();
-//      // re-enable System.out
-//      System.setErr(syserr);
-//      newSyserr.close();
-    }
-    assertTrue("Garbage java code did not raise an exception!",
-               gotException);
-  }
-}
\ No newline at end of file

Modified: gate/branches/sawdust2/plugins/ANNIE/pom.xml
===================================================================
--- gate/branches/sawdust2/plugins/ANNIE/pom.xml        2016-10-05 06:48:43 UTC 
(rev 19630)
+++ gate/branches/sawdust2/plugins/ANNIE/pom.xml        2016-10-05 06:50:49 UTC 
(rev 19631)
@@ -4,6 +4,8 @@
        
        <modelVersion>4.0.0</modelVersion>
 
+       <name>ANNIE</name>
+
        <parent>
                <groupId>uk.ac.gate.plugins</groupId>
                <artifactId>base-plugin</artifactId>

Modified: 
gate/branches/sawdust2/plugins/ANNIE/src/main/java/gate/util/compilers/Eclipse.java
===================================================================
--- 
gate/branches/sawdust2/plugins/ANNIE/src/main/java/gate/util/compilers/Eclipse.java
 2016-10-05 06:48:43 UTC (rev 19630)
+++ 
gate/branches/sawdust2/plugins/ANNIE/src/main/java/gate/util/compilers/Eclipse.java
 2016-10-05 06:50:49 UTC (rev 19631)
@@ -337,11 +337,11 @@
     settings.put(CompilerOptions.OPTION_ReportUnusedLabel,
         CompilerOptions.IGNORE);    
 
-    // source and target - force 1.6 target as GATE only requires 1.6 or later.
+    // source and target - force 1.8 target as GATE only requires 1.8 or later.
     settings.put(CompilerOptions.OPTION_Source,
                  CompilerOptions.VERSION_1_8);
     settings.put(CompilerOptions.OPTION_TargetPlatform,
-                 CompilerOptions.VERSION_1_6);
+                 CompilerOptions.VERSION_1_8);
 
     final IProblemFactory problemFactory = 
       new DefaultProblemFactory(Locale.getDefault());

Copied: 
gate/branches/sawdust2/plugins/ANNIE/src/test/java/gate/util/TestJavac.java 
(from rev 19630, 
gate/branches/sawdust2/gate-core/src/test/disabled/gate/util/TestJavac.java)
===================================================================
--- gate/branches/sawdust2/plugins/ANNIE/src/test/java/gate/util/TestJavac.java 
                        (rev 0)
+++ gate/branches/sawdust2/plugins/ANNIE/src/test/java/gate/util/TestJavac.java 
2016-10-05 06:50:49 UTC (rev 19631)
@@ -0,0 +1,128 @@
+/*
+ *
+ *  Copyright (c) 1995-2012, The University of Sheffield. See the file
+ *  COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
+ *
+ *  This file is part of GATE (see http://gate.ac.uk/), and is free
+ *  software, licenced under the GNU Library General Public License,
+ *  Version 2, June 1991 (in the distribution as file licence.html,
+ *  and also available at http://gate.ac.uk/gate/licence.html).
+ *
+ *  Valentin Tablan, 26/Feb/2002
+ *
+ *  $Id$
+ */
+
+package gate.util;
+
+import java.lang.reflect.Method;
+import java.util.HashMap;
+import java.util.Map;
+
+import junit.framework.*;
+
+import gate.Gate;
+
+public class TestJavac extends TestCase{
+  /** Construction */
+  public TestJavac(String name) { super(name); }
+
+ /** Fixture set up */
+  @Override
+  public void setUp() {
+  } // setUp
+
+  /** Test suite routine for the test runner */
+  public static Test suite() {
+    return new TestSuite(TestJavac.class);
+  } // suite
+
+ /** Jdk compiler */
+  public void testCompiler() throws Exception {
+
+    String nl = Strings.getNl();
+    String javaSource =
+      "package foo.bar;" + nl +
+      "public class Outer {" + nl +
+      "//let's make an inner class " + nl +
+      " class Adder{" + nl +
+      " public int inc(int i){" + nl +
+      "   return i + 1;" + nl +
+      " }//inc(int)" + nl +
+      " }//class Adder" + nl +
+      " //let's make another inner class" + nl +
+      " class Deccer{" + nl +
+      " public int dec(int i){" + nl +
+      "   return i - 1;" + nl +
+      " }//dec(int)" + nl +
+      " }//clas Deccer" + nl +
+      " //some public methods" + nl +
+      " public int inc(int i){" + nl +
+      "   return new Adder().inc(i);" + nl +
+      " }" + nl +
+      " public int dec(int i){" + nl +
+      "   return new Deccer().dec(i);" + nl +
+      " }" + nl +
+      " }//class Outer" + nl;
+
+      //load the class
+      Map<String,String> sources = new HashMap<String,String>();
+      sources.put("foo.bar.Outer", javaSource);
+      Javac.loadClasses(sources, Gate.getClassLoader());
+      //try to access the class
+      Class<?> testClass = Gate.getClassLoader().loadClass("foo.bar.Outer");
+      assertNotNull("Could not find decalred class", testClass);
+      Object testInstance = testClass.newInstance();
+      assertNotNull("Could not instantiate declared class", testInstance);
+      Method testMethod =  testClass.getDeclaredMethod(
+                                          "inc",
+                                          new Class[]{int.class});
+      assertNotNull("Could not find declared method", testMethod);
+      Object result = testMethod.invoke(testInstance,
+                                        new Object[]{new Integer(1)});
+      assertEquals("Invalid result", result, new Integer(2));
+
+      testMethod =  testClass.getDeclaredMethod(
+                                          "dec",
+                                          new Class[]{int.class});
+      assertNotNull("Could not find declared method", testMethod);
+      result = testMethod.invoke(testInstance, new Object[]{new Integer(2)});
+      assertEquals("Invalid result", result, new Integer(1));
+  }
+
+  public void testCompileError() throws Exception {
+    System.err.println("Testing for a compile error:");
+    String nl = Strings.getNl();
+    String javaSource =
+        "package foo.bar;" + nl +
+        "public class X {" + nl +
+        " //some public methods" + nl +
+        " public void foo(){" + nl +
+        " String nullStr = null;" + nl +
+        "// This should cause a compile error:" + nl +
+        " nullStr = 123;" + nl +
+        "} " + nl +
+        " " + nl +
+        " " + nl +
+        " }//class Outer" + nl;
+
+    //load the class
+    Map<String,String> sources = new HashMap<String,String>();
+    sources.put("foo.bar.X", javaSource);
+    boolean gotException = false;
+    try {
+      Javac.loadClasses(sources,Gate.getClassLoader());
+    }
+    catch (GateException ge) {
+      gotException = true;
+    }
+    finally {
+//      newSyserr.flush();
+//      // re-enable System.out
+//      System.setErr(syserr);
+//      newSyserr.close();
+    }
+    assertTrue("Garbage java code did not raise an exception!",
+               gotException);
+  }
+}
\ No newline at end of file

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
GATE-cvs mailing list
GATE-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gate-cvs

Reply via email to