View Javadoc
1   /*
2    * Created by smenor on Jan 7, 2005
3    *
4    * Copyright (C) 2005
5    * Arizona State University - Cancer Research Institute
6    * All rights Reserved.
7    */
8   package edu.asu.cri.MirkE.dataStructures;
9   
10  import junit.framework.TestCase;
11  
12  /***
13   * @author smenor
14   *
15   */
16  public class UnitTest extends TestCase {
17     Unit fahrenheit;
18     Unit celsius;
19     Unit kelvin;
20     Unit meters; 
21     Unit inches;
22     
23      /***
24       * @param args
25       */
26      public static void main(String[] args) {
27      }
28  
29      /*
30       * @see TestCase#setUp()
31       */
32      protected void setUp() throws Exception {
33          super.setUp();
34          kelvin = Unit.createUnit("kelvin");
35          celsius = Unit.createUnit("celsius", 1, -273, kelvin);
36          fahrenheit = Unit.createUnit("fahrenheit", 1.8, 32, celsius);
37          meters = Unit.createUnit("meters");
38          inches = Unit.createUnit("inches", 39.3, 0, meters);
39      }
40  
41      /*
42       * @see TestCase#tearDown()
43       */
44      protected void tearDown() throws Exception {
45          super.tearDown();
46      }
47  
48      /***
49       * Constructor for UnitTest.
50       * @param arg0
51       */
52      public UnitTest(String arg0) {
53          super(arg0);
54      }
55  
56      /***
57       * 
58       */
59      public void testConvertTo() {        
60          assertEquals(
61                  inches.convertTo(1, meters),
62                  0.0254,
63                  0.0001);
64          
65          assertEquals(
66                  meters.convertTo(1, meters),
67                  1,
68                  0.0001);
69  
70          assertEquals(
71                  inches.convertTo(1, inches),
72                  1,
73                  0.0001);
74  
75          assertEquals(
76                  celsius.convertTo(0, fahrenheit),
77                  32, 
78                  0.0001);
79                  
80          assertEquals(
81                  fahrenheit.convertTo(32, celsius),
82                  0,
83                  0.0001);
84         
85          assertEquals(
86                  fahrenheit.convertTo(63, fahrenheit),
87                  63,
88                  0.0001);
89           
90           assertEquals(
91                   kelvin.convertTo(100, celsius),
92                   -173,
93                   0.0001);
94          
95          assertEquals(
96                  celsius.convertTo(100, kelvin),
97                  373,
98                  0.0001);
99          
100         assertEquals(
101                 fahrenheit.convertTo(100, kelvin),
102                 310.928,
103                 0.2);
104     }
105     
106     /***
107      * 
108      */
109     public void testIsCompatible() {
110         assertTrue(meters.isCompatible(inches));
111         assertTrue(inches.isCompatible(meters));
112         assertTrue(inches.isCompatible(inches));
113         assertTrue(meters.isCompatible(meters));
114         
115         assertTrue(fahrenheit.isCompatible(celsius));
116         assertTrue(celsius.isCompatible(fahrenheit));
117         
118         assertFalse(fahrenheit.isCompatible(inches));
119         assertFalse(celsius.isCompatible(meters));
120     }
121     
122     /***
123      * 
124      */
125     public void testEquals() {
126         assertTrue(meters.equals(meters));
127         assertTrue(inches.equals(inches));
128         assertFalse(inches.equals(meters));
129         assertFalse(inches.equals(kelvin));
130         assertFalse(inches.equals(celsius));
131     }
132 
133 }