View Javadoc

1   package net.sf.tomp.djunit;
2   
3   import junit.framework.TestCase;
4   
5   import java.io.IOException;
6   
7   public abstract class TestCaseBase extends TestCase
8   {
9       private TestData testData;
10  
11      public TestCaseBase()
12      {
13          super();
14      }
15  
16      public TestCaseBase(String name)
17      {
18          super(name);
19      }
20  
21      protected abstract Provider getProvider();
22  
23      protected TestData getTestData()
24          throws IOException
25      {
26          if (testData == null)
27          {
28              //System.out.println("Creating TestData from "+getTestDataName());
29              Provider p = getProvider();
30  
31              synchronized (p)
32              {
33                  testData = p.getTestData(getTestDataName());
34              }
35          }
36  
37          return testData;
38      }
39  
40      protected String getTestDataName()
41      {
42          return this.getClass().getName() + "." + getName();
43      }
44  }