Print

Print


Commit in GeomConverter/test/org/lcsim/detector/converter/compact on MAIN
DiskTrackerTest.java+81-771.9 -> 1.10
update test

GeomConverter/test/org/lcsim/detector/converter/compact
DiskTrackerTest.java 1.9 -> 1.10
diff -u -r1.9 -r1.10
--- DiskTrackerTest.java	25 Mar 2009 00:27:35 -0000	1.9
+++ DiskTrackerTest.java	10 Feb 2011 00:28:51 -0000	1.10
@@ -8,55 +8,52 @@
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
 
-import org.lcsim.detector.DetectorElementStore;
 import org.lcsim.detector.IDetectorElement;
 import org.lcsim.detector.IDetectorElementContainer;
 import org.lcsim.detector.IPhysicalVolumeNavigator;
 import org.lcsim.detector.IPhysicalVolumePath;
+import org.lcsim.detector.identifier.IExpandedIdentifier;
+import org.lcsim.detector.identifier.IIdentifier;
 import org.lcsim.geometry.Detector;
 import org.lcsim.geometry.GeometryReader;
 import org.lcsim.geometry.Subdetector;
 
 /**
  * 
- * Perform tests on the detailed geometry of an 
+ * Perform tests on the detailed geometry of an
  * 
- * @see org.lcsim.geometry.subdetector.DiskTracker 
+ * @see org.lcsim.geometry.subdetector.DiskTracker
  * 
  * @author Jeremy McCormick <[log in to unmask]>
- *
+ * 
  */
-public class DiskTrackerTest
-extends TestCase
+public class DiskTrackerTest extends TestCase
 {
     private Detector detector;
-    
+
     public DiskTrackerTest(String name)
     {
         super(name);
     }
-    
+
     public static junit.framework.Test suite()
     {
         return new TestSuite(DiskTrackerTest.class);
     }
-    
-    private static final String resource = 
-        "/org/lcsim/detector/converter/compact/DiskTrackerTest.xml";
-    
+
+    private static final String resource = "/org/lcsim/detector/converter/compact/DiskTrackerTest.xml";
+
     public void setUp()
     {
-        InputStream in = 
-            this.getClass().
-            getResourceAsStream(resource);
-        
+        InputStream in = this.getClass().getResourceAsStream(resource);
+
         GeometryReader reader = new GeometryReader();
-        
-        try 
+
+        try
         {
             detector = reader.read(in);
         }
-        catch ( Throwable x )
+        catch (Throwable x)
         {
             throw new RuntimeException(x);
         }
@@ -68,77 +65,84 @@
         IDetectorElement subdet = compact.getDetectorElement();
         for (IDetectorElement endcap : subdet.getChildren())
         {
+            // System.out.println("endcap: " + endcap.getName());
             IDetectorElementContainer layers = endcap.getChildren();
-            assertEquals("Expected number of sensors is wrong!",layers.size(),2);
-            IDetectorElement layer = layers.get(0);
-            try {
-            	assertEquals(layer.getIdentifierHelper().getValue(layer.getIdentifier(), "system"),compact.getIDDecoder().getSystemNumber());
-            	int barrel=layer.getIdentifierHelper().getValue(layer.getIdentifier(), "barrel");
-            	assertTrue(barrel == 1 || barrel == 2);
-            	assertTrue(layer.getIdentifierHelper().getValue(layer.getIdentifier(), "layer") == 0);
-            }
-            catch (Exception x)
+            // System.out.println("layers: " + layers.size());
+            assertEquals("Expected number of layers is wrong.", layers.size(), 1);
+            for (IDetectorElement layer : endcap.getChildren())
             {
-            	throw new RuntimeException(x);
+                int sensorNumber = 0;
+                for (IDetectorElement sensor : layer.getChildren())
+                {
+                    // System.out.println("sensor: " + sensor.getName());
+                    IIdentifier id = sensor.getIdentifier();
+                    IExpandedIdentifier expId = sensor.getIdentifierHelper().unpack(id);
+                    // System.out.println(expId.toString());
+                    assertEquals(sensor.getIdentifierHelper().getValue(sensor.getIdentifier(), "system"), compact
+                            .getIDDecoder().getSystemNumber());
+                    int barrel = sensor.getIdentifierHelper().getValue(sensor.getIdentifier(), "barrel");
+                    assertTrue(barrel == 1 || barrel == 2);
+                    assertTrue(sensor.getIdentifierHelper().getValue(sensor.getIdentifier(), "layer") == 0);
+                    assertTrue(sensor.getIdentifierHelper().getValue(sensor.getIdentifier(), "slice") == sensorNumber);
+                    ++sensorNumber;
+                }
             }
         }
     }
 
     /**
-     * Scan the geometry with some points along the z axis.
-     * Check that the points are within the correct geometric
+     * Scan the geometry with some points along the z axis. Check that the points are within the correct geometric
      * volumes and DetectorElements.
      */
     public void testZPointScan()
-    {                     
+    {
         IPhysicalVolumeNavigator navigator = detector.getNavigator();
-              
-        double[] zpoints = new double[] {
-                12.1,
-                11.1,
-                10.1,
-                0.,
-                -10.1,
-                -11.1,
-                -12.1
-        };                                      
-        
-        String[] pathAnswerKey = new String[] {                
-                "/tracking_region",
-                "/tracking_region/DiskTracker_positive_layer0/slice1",
-                "/tracking_region/DiskTracker_positive_layer0/slice0",
-                "/tracking_region",
-                "/tracking_region/DiskTracker_negative_layer0/slice0",               
-                "/tracking_region/DiskTracker_negative_layer0/slice1",
-                "/tracking_region"
-        };
-        
-        String[] deAnswerKey = new String[] {
-                "DiskTrackerTest",
-                "DiskTracker_positive_layer0_sensor1",
-                "DiskTracker_positive_layer0_sensor0",
-                "DiskTrackerTest",
-                "DiskTracker_negative_layer0_sensor0",
-                "DiskTracker_negative_layer0_sensor1",
-                "DiskTrackerTest"
-        };             
+
+        double[] zpoints = new double[]{12.1,11.1,10.1,0.,-10.1,-11.1,-12.1};
+
+        String[] pathAnswerKey =
+                new String[]{
+                    "/tracking_region",
+                    "/tracking_region/DiskTracker_layer0_pos/DiskTracker_layer0_slice1",
+                    "/tracking_region/DiskTracker_layer0_pos/DiskTracker_layer0_slice0",
+                    "/tracking_region",
+                    "/tracking_region/DiskTracker_layer0_neg/DiskTracker_layer0_slice0",
+                    "/tracking_region/DiskTracker_layer0_neg/DiskTracker_layer0_slice1",
+                    "/tracking_region"
+                };  
                 
-        for ( int i=0; i<zpoints.length; i++ )
-        {           
-            Hep3Vector zpoint = new BasicHep3Vector(0,0,zpoints[i]);
-            
+        String[] deAnswerKey =
+                new String[]{
+                    "DiskTrackerTest",
+                    "DiskTracker_layer0_slice1_pos",
+                    "DiskTracker_layer0_slice0_pos",
+                    "DiskTrackerTest",
+                    "DiskTracker_layer0_slice0_neg",
+                    "DiskTracker_layer0_slice1_neg",
+                    "DiskTrackerTest"
+                };
+
+        for (int i = 0; i < zpoints.length; i++ )
+        {
+            Hep3Vector zpoint = new BasicHep3Vector(0, 0, zpoints[i]);
+
             IPhysicalVolumePath path = navigator.getPath(zpoint);
-            
-            assertEquals(
-                    "Wrong path <" + path.toString() + "> at z = " + zpoints[i] + ".  Expected <" + pathAnswerKey[i] + ">.",
-                    path.toString(),
-                    pathAnswerKey[i]                    
-                    );
-            
+
+            //System.out.println(path);
+            //System.out.println("path: " + path);
+            //System.out.println("pathAnswer: " + pathAnswerKey[i]);
+
+            assertEquals("Wrong path <" + path.toString() + "> at z = " + zpoints[i] + ".  Expected <"
+                    + pathAnswerKey[i] + ">.", path.toString(), pathAnswerKey[i]);
+
             IDetectorElement srch = detector.getDetectorElement().findDetectorElement(zpoint);
-                                   
-            assertTrue("Wrong DE <" + srch.getName() + "> at z = " + zpoints[i] + ".  Expected <" + deAnswerKey[i] + ">.",
-                    srch.getName().equals(deAnswerKey[i]));
+
+            //System.out.println(srch.getName());
+            //System.out.println("deAnswer: " + deAnswerKey[i]);            
+
+            assertTrue("Wrong DE <" + srch.getName() + "> at z = " + zpoints[i] + ".  Expected <" + deAnswerKey[i]+ ">.", srch.getName().equals(deAnswerKey[i]));
+            
+            //System.out.println("--");            
         }
-    }   
+    }
 }
CVSspam 0.2.8