Browse Source

- compatibility with JDK7

- uncommented threading tests
Ranides Atterwim 11 years ago
parent
commit
e911425e9f

+ 1 - 0
nb-configuration.xml

@@ -14,5 +14,6 @@ That way multiple projects can share the same settings (useful for formatting ru
 Any value defined here will override the pom.xml file value but is only applicable to the current project.
 Any value defined here will override the pom.xml file value but is only applicable to the current project.
 -->
 -->
         <netbeans.compile.on.save>all</netbeans.compile.on.save>
         <netbeans.compile.on.save>all</netbeans.compile.on.save>
+        <netbeans.hint.jdkPlatform>JDK_1.7</netbeans.hint.jdkPlatform>
     </properties>
     </properties>
 </project-shared-configuration>
 </project-shared-configuration>

+ 0 - 38
src/main/java/net/ranides/assira/reflection/GenericFactory.java

@@ -7,7 +7,6 @@
 package net.ranides.assira.reflection;
 package net.ranides.assira.reflection;
 
 
 import java.lang.annotation.Annotation;
 import java.lang.annotation.Annotation;
-import java.lang.reflect.AnnotatedType;
 import java.lang.reflect.GenericDeclaration;
 import java.lang.reflect.GenericDeclaration;
 import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
 import java.lang.reflect.Type;
@@ -31,8 +30,6 @@ public final class GenericFactory {
     
     
     public static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0];
     public static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0];
     
     
-    public static final AnnotatedType[] EMPTY_ANNOTATION_TYPES = new AnnotatedType[0];
-    
     private GenericFactory() {
     private GenericFactory() {
         // utility class
         // utility class
     }
     }
@@ -332,20 +329,6 @@ public final class GenericFactory {
                 public TypeVariable<?>[] getTypeParameters() {
                 public TypeVariable<?>[] getTypeParameters() {
                     return new TypeVariable<?>[]{ GTVariable.this };
                     return new TypeVariable<?>[]{ GTVariable.this };
                 }
                 }
-                @Override
-                public <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
-                    return null;
-                }
-
-                @Override
-                public Annotation[] getAnnotations() {
-                    return EMPTY_ANNOTATIONS;
-                }
-
-                @Override
-                public Annotation[] getDeclaredAnnotations() {
-                    return EMPTY_ANNOTATIONS;
-                }
             };
             };
         }
         }
 
 
@@ -353,27 +336,6 @@ public final class GenericFactory {
         public String getName() {
         public String getName() {
             return name;
             return name;
         }
         }
-
-        @Override
-        public AnnotatedType[] getAnnotatedBounds() {
-            return EMPTY_ANNOTATION_TYPES; //NOPMD
-        }
-
-        @Override
-        public <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
-            return null;
-        }
-
-        @Override
-        public Annotation[] getAnnotations() {
-            return EMPTY_ANNOTATIONS; //NOPMD
-        }
-
-        @Override
-        public Annotation[] getDeclaredAnnotations() {
-            return EMPTY_ANNOTATIONS; //NOPMD
-        }
-        
     }
     }
     
     
     
     

+ 0 - 2
src/test/java/net/ranides/assira/asm/AsmifierTest.java

@@ -6,7 +6,6 @@
  */
  */
 package net.ranides.assira.asm;
 package net.ranides.assira.asm;
 
 
-import edu.umd.cs.findbugs.annotations.SuppressWarnings;
 import java.io.IOException;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.PrintWriter;
 import java.io.StringWriter;
 import java.io.StringWriter;
@@ -14,7 +13,6 @@ import net.ranides.assira.collection.ArrayUtils;
 import net.ranides.assira.trace.LoggerUtils;
 import net.ranides.assira.trace.LoggerUtils;
 import org.junit.Test;
 import org.junit.Test;
 import static org.junit.Assert.*;
 import static org.junit.Assert.*;
-import org.junit.Ignore;
 
 
 /**
 /**
  *
  *

+ 20 - 7
src/test/java/net/ranides/assira/events/EventJoinTest.java

@@ -11,6 +11,7 @@ import java.util.List;
 import net.ranides.assira.collection.ArrayUtils;
 import net.ranides.assira.collection.ArrayUtils;
 import net.ranides.assira.collection.SetUtils;
 import net.ranides.assira.collection.SetUtils;
 import net.ranides.assira.collection.map.LazyMap;
 import net.ranides.assira.collection.map.LazyMap;
+import net.ranides.assira.time.TimeUtils;
 import static org.junit.Assert.*;
 import static org.junit.Assert.*;
 import org.junit.Test;
 import org.junit.Test;
 
 
@@ -71,23 +72,35 @@ public class EventJoinTest {
         main.addEventListener(CoreEvent.Stop.class, hits.new HitListener<CoreEvent.Stop>("exit") );
         main.addEventListener(CoreEvent.Stop.class, hits.new HitListener<CoreEvent.Stop>("exit") );
 
 
         main.signalEvent(new TWriteEvent());
         main.signalEvent(new TWriteEvent());
+        TimeUtils.sleep(50);
         main.signalEvent(new TWriteEvent());
         main.signalEvent(new TWriteEvent());
+        TimeUtils.sleep(50);
         main.signalEvent(new TReadEvent());
         main.signalEvent(new TReadEvent());
+        TimeUtils.sleep(50);
         main.signalEvent(new TReadEvent());
         main.signalEvent(new TReadEvent());
+        TimeUtils.sleep(50);
         main.signalEvent(new TReadEvent());
         main.signalEvent(new TReadEvent());
+        TimeUtils.sleep(50);
         main.signalEvent(new Event(){});
         main.signalEvent(new Event(){});
+        TimeUtils.sleep(50);
         main.signalEvent(new TReadEvent());
         main.signalEvent(new TReadEvent());
+        TimeUtils.sleep(50);
         main.signalEvent(new TReadEvent());
         main.signalEvent(new TReadEvent());
-
+        TimeUtils.sleep(50);
+        
         main.stop();
         main.stop();
+        TimeUtils.sleep(50);
 
 
         assertEquals(SetUtils.asHashSet("global", "io", "write", "read", "exit", "shutdown"), hits.keySet());
         assertEquals(SetUtils.asHashSet("global", "io", "write", "read", "exit", "shutdown"), hits.keySet());
-        assertEquals(ArrayUtils.asList(0,3,6,7,10,12,14), hits.get("global"));
-        assertEquals(ArrayUtils.asList(1,4, 8), hits.get("io"));
-        assertEquals(ArrayUtils.asList(2), hits.get("write"));
-        assertEquals(ArrayUtils.asList(5, 9), hits.get("read"));
-        assertEquals(ArrayUtils.asList(11), hits.get("exit"));
-        assertEquals(ArrayUtils.asList(13), hits.get("shutdown"));
+        
+        assertEquals(ArrayUtils.asList(0, 3, 6, 9, 12, 15, 16, 19, 22, 24, 26), hits.get("global"));
+        assertEquals(ArrayUtils.asList(1, 4, 7, 10, 13, 17, 20), hits.get("io"));
+        assertEquals(ArrayUtils.asList(2, 5), hits.get("write"));
+        assertEquals(ArrayUtils.asList(8, 11, 14, 18, 21), hits.get("read"));
+        assertEquals(ArrayUtils.asList(23), hits.get("exit"));
+        assertEquals(ArrayUtils.asList(25), hits.get("shutdown"));
+        
+        
 
 
     }
     }
 
 

+ 24 - 25
src/test/java/net/ranides/assira/events/EventProactorTest.java

@@ -8,12 +8,12 @@ package net.ranides.assira.events;
 
 
 import java.util.LinkedList;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.List;
+import net.ranides.assira.collection.ArrayUtils;
 import net.ranides.assira.collection.SetUtils;
 import net.ranides.assira.collection.SetUtils;
 import net.ranides.assira.collection.map.LazyMap;
 import net.ranides.assira.collection.map.LazyMap;
 import net.ranides.assira.time.TimeUtils;
 import net.ranides.assira.time.TimeUtils;
 import net.ranides.assira.trace.LoggerUtils;
 import net.ranides.assira.trace.LoggerUtils;
 import static org.junit.Assert.*;
 import static org.junit.Assert.*;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.Test;
 
 
 
 
@@ -29,7 +29,7 @@ public class EventProactorTest {
     }
     }
 
 
     private static class HitMap extends LazyMap<String, List<Integer>>  {
     private static class HitMap extends LazyMap<String, List<Integer>>  {
-        private int counter;
+        private int counter = 0;
 
 
         @Override
         @Override
         public List<Integer> apply(String source) {
         public List<Integer> apply(String source) {
@@ -47,15 +47,14 @@ public class EventProactorTest {
             @Override
             @Override
             public void handleEvent(T event) {
             public void handleEvent(T event) {
                 // "handleEvent" can be invoked by many threads - have to be thread-safe
                 // "handleEvent" can be invoked by many threads - have to be thread-safe
-                synchronized(this) {
-                    get( name ).add(counter++);
+                synchronized(HitMap.this) {
+                    get(name).add(counter++);
                 }
                 }
             }
             }
         }
         }
 
 
     };
     };
 
 
-    @Ignore("unstable")
     @Test
     @Test
     public void testPropagation() {
     public void testPropagation() {
         // @todo (assira) EventProactor: unstable test of 
         // @todo (assira) EventProactor: unstable test of 
@@ -101,26 +100,26 @@ public class EventProactorTest {
         unknown.dispose();
         unknown.dispose();
     }
     }
 
 
-//    @Test
-//    public void testStop() {
-//        HitMap hits = new HitMap();
-//        EventReactor unknown = EventReactor.newInstance("unknown", 32, 1000);
-//        EventReactor main = EventReactor.newInstance("name", 32, 1000);
-//
-//        main.addEventListener(Event.class, hits.new HitListener<Event>("global") );
-//        main.addEventListener(CoreEvent.Shutdown.class, hits.new HitListener<CoreEvent.Shutdown>("shutdown") );
-//        main.addEventListener(CoreEvent.Stop.class, hits.new HitListener<CoreEvent.Stop>("exit") );
-//
-//        main.signalEvent(CoreEvent.stop(unknown) );
-//        main.stop();
-//
-//        assertEquals(SetUtils.asHashSet("global", "exit", "shutdown"), hits.keySet());
-//        assertEquals(ArrayUtils.asList(0,2,4,6), hits.get("global"));
-//        assertEquals(ArrayUtils.asList(1,3), hits.get("exit"));
-//        assertEquals(ArrayUtils.asList(5), hits.get("shutdown"));
-//
-//        unknown.dispose();
-//    }
+    @Test
+    public void testStop() {
+        HitMap hits = new HitMap();
+        EventReactor unknown = EventReactor.newInstance("unknown", 32, 1000);
+        EventReactor main = EventReactor.newInstance("name", 32, 1000);
+
+        main.addEventListener(Event.class, hits.new HitListener<Event>("global") );
+        main.addEventListener(CoreEvent.Shutdown.class, hits.new HitListener<CoreEvent.Shutdown>("shutdown") );
+        main.addEventListener(CoreEvent.Stop.class, hits.new HitListener<CoreEvent.Stop>("exit") );
+
+        main.signalEvent(CoreEvent.stop(unknown) );
+        main.stop();
+
+        assertEquals(SetUtils.asHashSet("global", "exit", "shutdown"), hits.keySet());
+        assertEquals(ArrayUtils.asList(0,2,4,6), hits.get("global"));
+        assertEquals(ArrayUtils.asList(1,3), hits.get("exit"));
+        assertEquals(ArrayUtils.asList(5), hits.get("shutdown"));
+
+        unknown.dispose();
+    }
 
 
     @SuppressWarnings("PMD")
     @SuppressWarnings("PMD")
     class IOEvent implements Event { }
     class IOEvent implements Event { }

+ 1 - 1
src/test/java/net/ranides/assira/math/PVNumberTest.java

@@ -192,7 +192,7 @@ import org.junit.Test;
 
 
 
 
 
 
-    @Ignore
+    @Ignore("manual slow")
     @Test
     @Test
     public void testPerf() throws Exception {
     public void testPerf() throws Exception {
         Method mbi = ICounter.class.getMethod("increment");
         Method mbi = ICounter.class.getMethod("increment");