View Javadoc

1   /*
2    * VTrack_Test.java
3    *
4    * Created on July 24, 2007, 11:52 AM
5    *
6    * $Id: VTrack_Test.java,v 1.1.1.1 2010/04/08 20:38:00 jeremy Exp $
7    */
8   
9   package org.lcsim.recon.tracking.trfbase;
10  
11  import junit.framework.TestCase;
12  import org.lcsim.recon.tracking.trfutil.Assert;
13  
14  /**
15   *
16   * @author Norman Graf
17   */
18  public class VTrack_Test extends TestCase
19  {
20      private boolean debug;
21      /** Creates a new instance of VTrack_Test */
22      public void testVTrack()
23      {
24           String ok_prefix = "VTrack test (I): ";
25          String error_prefix = "VTrack test (E): ";
26          
27          if(debug) System.out.println( ok_prefix
28                  + "------- Testing component VTrack. -------" );
29          
30          
31          //********************************************************************
32          
33          if(debug) System.out.println( ok_prefix + "Test constructors." );
34          VTrack trv0 = new VTrack();
35          if(debug) System.out.println( trv0 );
36          
37          Surface srf1 =  new SurfTest(-123);
38          VTrack trv1 = new VTrack(srf1);
39          trv1.setForward();
40          if(debug) System.out.println( trv1 );
41          TrackVector vec = new TrackVector();
42          vec.set(0, 1.0);
43          vec.set(1, 2.0);
44          vec.set(2, 3.0);
45          vec.set(3, 4.0);
46          vec.set(4, 5.0);
47          VTrack trv2 = new VTrack(srf1,vec);
48          trv2.setBackward();
49          if(debug) System.out.println( trv2 );
50          
51          //********************************************************************
52          
53          if(debug) System.out.println( ok_prefix + "Test copy constructor." );
54          VTrack trv2c = new VTrack(trv2);
55          if(debug) System.out.println( trv2c );
56          VTrack trv3 = new VTrack(trv1);
57          VTrack trv4 = new VTrack(trv3);
58          
59          if(debug) System.out.println( trv1 );
60          if(debug) System.out.println( trv4 );
61          Assert.assertTrue( trv1.equals(trv4) );
62          
63          //********************************************************************
64          
65          if(debug) System.out.println( ok_prefix + "Test assignment.\n" );
66          
67          Assert.assertTrue( ! trv0.isValid() );
68          trv0 = trv1;
69          Assert.assertTrue( trv0.isValid() );
70          if(debug) System.out.println( trv0 );
71          Assert.assertTrue( trv0 == trv1 );
72          
73          //********************************************************************
74          
75          if(debug) System.out.println( ok_prefix + "Test surface access.\n" );
76          Surface srf2 = new SurfTest(246) ;
77          trv2 = new VTrack(trv1);
78          trv2.setSurface(srf2);
79          if(debug) System.out.println( srf2 );
80          if(debug) System.out.println( trv2.surface() );
81          if(debug) System.out.println( trv2 );
82          Assert.assertTrue( srf2.equals(trv2.surface()) );
83          Assert.assertTrue( trv1.notEquals(trv2) );
84          
85          //********************************************************************
86          
87          if(debug) System.out.println( ok_prefix + "Test vector access.\n" );
88          trv2 = new VTrack(trv1);
89          trv2.setVector(vec);
90          if(debug) System.out.println( vec );
91          if(debug) System.out.println( trv2.vector() );
92          if(debug) System.out.println( trv2 );
93          Assert.assertTrue( vec.equals(trv2.vector()) );
94          Assert.assertTrue( trv1.notEquals(trv2) );
95          for ( int i=0; i<5; ++i ) Assert.assertTrue( trv2.vector().get(i) == vec.get(i) );
96          
97          //********************************************************************
98          
99          if(debug) System.out.println( ok_prefix + "Test direction.\n" );
100         Assert.assertTrue( trv1.isForward() );
101         Assert.assertTrue( ! trv1.isBackward() );
102         trv1.setBackward();
103         Assert.assertTrue( ! trv1.isForward() );
104         Assert.assertTrue( trv1.isBackward() );
105         trv1.setForward();
106         Assert.assertTrue( trv1.isForward() );
107         Assert.assertTrue( ! trv1.isBackward() );
108         
109         //********************************************************************
110         
111         if(debug) System.out.println( ok_prefix
112                 + "------------- All tests passed. -------------" );       
113     }
114     
115 }