1 /* 2 * CrossStat_t.java 3 * 4 * Created on July 24, 2007, 11:48 AM 5 * 6 * $Id: CrossStat_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 CrossStat_Test extends TestCase 19 { 20 private boolean debug; 21 //********************************************************************** 22 23 // Routine to check crossing status. 24 static boolean check_xs(CrossStat xstat, boolean at, boolean on, 25 boolean inside, boolean outside, boolean inb, boolean outb) 26 { 27 boolean bad = false; 28 if ( xstat.at() != at ) return bad; 29 if ( xstat.on() != on ) return bad; 30 if ( xstat.inside() != inside ) return bad; 31 if ( xstat.outside() != outside ) return bad; 32 if ( xstat.inBounds() != inb ) return bad; 33 if ( xstat.outOfBounds() != outb ) return bad; 34 return ! bad; 35 } 36 /** Creates a new instance of CrossStat_t */ 37 public void testCrossStat() 38 { 39 String ok_prefix = "CrossStat test (I): "; 40 String error_prefix = "CrossStat test (E): "; 41 42 if(debug) System.out.println( ok_prefix 43 + "------- Testing component CrossStat. -------" ); 44 45 //******************************************************************** 46 47 if(debug) System.out.println( ok_prefix + "Testing pure constructor.\n"); 48 49 CrossStat xstat1 = new CrossStat(PureStat.AT); 50 if(debug) System.out.println( xstat1 ); 51 Assert.assertTrue( check_xs(xstat1, true, true, false, false, false, false) ); 52 53 CrossStat xstat2 = new CrossStat(PureStat.ON); 54 if(debug) System.out.println( xstat2 ); 55 Assert.assertTrue( check_xs(xstat2, false, true, false, false, false, false) ); 56 CrossStat xstat3 = new CrossStat(PureStat.INSIDE); 57 if(debug) System.out.println( xstat3 ); 58 Assert.assertTrue( check_xs(xstat3, false, false, true, false, false, false) ); 59 CrossStat xstat4 = new CrossStat(PureStat.OUTSIDE); 60 if(debug) System.out.println( xstat4 ); 61 Assert.assertTrue( check_xs(xstat4, false, false, false, true, false, false) ); 62 63 //******************************************************************** 64 65 if(debug) System.out.println( ok_prefix + "Testing bound constructor.\n"); 66 CrossStat xstat5 = new CrossStat(BoundedStat.UNDEFINED_BOUNDS); 67 if(debug) System.out.println( xstat5 ); 68 Assert.assertTrue( check_xs(xstat5, true, true, false, false, false, false) ); 69 CrossStat xstat6 = new CrossStat(BoundedStat.IN_BOUNDS); 70 if(debug) System.out.println( xstat6 ); 71 Assert.assertTrue( check_xs(xstat6, true, true, false, false, true, false) ); 72 CrossStat xstat7 = new CrossStat(BoundedStat.OUT_OF_BOUNDS); 73 if(debug) System.out.println( xstat7 ); 74 Assert.assertTrue( check_xs(xstat7, true, true, false, false, false, true) ); 75 CrossStat xstat8 = new CrossStat(BoundedStat.BOTH_BOUNDS); 76 if(debug) System.out.println( xstat8 ); 77 Assert.assertTrue( check_xs(xstat8, true, true, false, false, true, true) ); 78 79 //******************************************************************** 80 81 if(debug) System.out.println( ok_prefix + "Check parameters." ); 82 Assert.assertTrue( xstat1.nSigma() == 5.0 ); 83 Assert.assertTrue( xstat2.precision() == 1.e-14 ); 84 85 //******************************************************************** 86 87 if(debug) System.out.println( ok_prefix + "Check boundsChecked method." ); 88 Assert.assertTrue( ! xstat1.boundsChecked() ); 89 Assert.assertTrue( ! xstat2.boundsChecked() ); 90 Assert.assertTrue( ! xstat3.boundsChecked() ); 91 Assert.assertTrue( ! xstat4.boundsChecked() ); 92 Assert.assertTrue( ! xstat5.boundsChecked() ); 93 Assert.assertTrue( xstat6.boundsChecked() ); 94 Assert.assertTrue( xstat7.boundsChecked() ); 95 Assert.assertTrue( xstat8.boundsChecked() ); 96 97 //******************************************************************** 98 99 if(debug) System.out.println( ok_prefix + "Check assignment." ); 100 xstat3 = xstat8; 101 Assert.assertTrue( check_xs(xstat3, true, true, false, false, true, true) ); 102 103 //******************************************************************** 104 105 if(debug) System.out.println( ok_prefix 106 + "------------- All tests passed. -------------" ); 107 108 //******************************************************************** 109 } 110 111 }