View Javadoc

1   package org.lcsim.detector.converter.compact;
2   
3   import java.io.InputStream;
4   
5   import junit.framework.TestCase;
6   import junit.framework.TestSuite;
7   
8   import org.lcsim.detector.IParameters;
9   import org.lcsim.geometry.Detector;
10  import org.lcsim.geometry.GeometryReader;
11  
12  /**
13   * Tests {@link ParametersConverter} by reading the resource 
14   * ParametersConverterTest.xml and checking the converted values
15   * for correctness.
16   * 
17   * @author Jeremy McCormick
18   * @version $Id: ParametersConverterTest.java,v 1.1 2007/05/22 20:02:07 jeremy Exp $
19   */
20  public class ParametersConverterTest
21  extends TestCase
22  {
23      private Detector detector;
24      
25  	public ParametersConverterTest(String name)
26      {
27          super(name);
28      }
29      
30      public static junit.framework.Test suite()
31      {
32          return new TestSuite(ParametersConverterTest.class);
33      }
34      
35      private static final String resource = "/org/lcsim/detector/converter/compact/ParametersConverterTest.xml";    
36      public void setUp()
37      {
38          InputStream in = 
39              this.getClass().
40              getResourceAsStream(resource);
41          GeometryReader reader = new GeometryReader();
42          try {
43              detector = reader.read(in);
44          }
45          catch ( Throwable x )
46          {
47              throw new RuntimeException(x);
48          }
49      }
50      
51      public void testParameters() throws Exception
52      {
53          IParameters param = detector.getSubdetector("test").getDetectorElement().getParameters();
54          assertTrue( param != null );
55          
56          assertEquals(param.getIntegerParameter("int"), 1);
57          int[] intArray = param.getIntegerArrayParameter("intArray");
58          assertEquals(intArray[0], 1);
59          assertEquals(intArray[1], 2);
60          assertEquals(intArray[2], 3);
61          assertEquals(intArray[3], 4);
62          
63          assertEquals(param.getDoubleParameter("double"), 1.0);
64          double[] doubleArray = param.getDoubleArrayParameter("doubleArray");
65          assertEquals(doubleArray[0], 1.1);
66          assertEquals(doubleArray[1], 2.2);
67          assertEquals(doubleArray[2], 3.3);
68          assertEquals(doubleArray[3], 4.4);
69          
70          assertEquals(param.getBooleanParameter("boolean"), true);
71          boolean[] booleanArray = param.getBooleanArrayParameter("booleanArray");
72          assertEquals(booleanArray[0], true);
73          assertEquals(booleanArray[1], false);
74          
75          assertEquals(param.getStringParameter("string"), "foo");
76          String[] stringArray = param.getStringArrayParameter("stringArray");
77          assertEquals(stringArray[0], "foo");
78          assertEquals(stringArray[1], "bar");
79          assertEquals(stringArray[2], "baz");        
80      }    
81  }