User: mulder  
  Date: 00/06/06 15:00:26

  Modified:    src/main/test/jboss/minerva/factories JDBCFactoryTest.java
  Log:
  More tests
  
  Revision  Changes    Path
  1.2       +29 -1     jboss/src/main/test/jboss/minerva/factories/JDBCFactoryTest.java
  
  Index: JDBCFactoryTest.java
  ===================================================================
  RCS file: 
/products/cvs/ejboss/jboss/src/main/test/jboss/minerva/factories/JDBCFactoryTest.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- JDBCFactoryTest.java      2000/06/05 03:18:43     1.1
  +++ JDBCFactoryTest.java      2000/06/06 22:00:25     1.2
  @@ -13,10 +13,11 @@
    * Tests for JDBCConnectionFactory.  Currently a work in progress.  Uses the
    * test database driver so it doesn't rely on any particular real database
    * being present.
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    * @author Aaron Mulder ([EMAIL PROTECTED])
    */
   public class JDBCFactoryTest extends TestCase {
  +    private final static int MAX_ITERATIONS = 10000;
       ObjectPool pool;
       private JDBCConnectionFactory factory;
       private String url;
  @@ -85,7 +86,6 @@
       }
   
       public void testCreateAndDelete() {
  -        final int MAX_ITERATIONS = 10000;
           factory.setConnectURL(url);
           factory.poolStarted(pool, null);
           Vector v = new Vector();
  @@ -108,5 +108,33 @@
               } catch(SQLException e) {
                   fail(e.getMessage());
               }
  +        factory.poolClosing(pool);
  +    }
  +
  +    public void testPrepareAndReturn() {
  +        factory.setConnectURL(url);
  +        factory.poolStarted(pool, null);
  +        Vector v = new Vector();
  +        HashMap map = new HashMap();
  +        for(int i = 0; i<MAX_ITERATIONS; i++) {
  +            Object o = factory.createObject();
  +            v.addElement(o);
  +        }
  +        for(int i = v.size()-1; i >= 0; i--) {
  +            Object src = v.elementAt(i);
  +            assert(src != null);
  +            Object trans = factory.prepareObject(src);
  +            assert(trans instanceof ConnectionInPool);
  +            map.put(trans, src);
  +        }
  +        assert(map.size() == v.size());
  +        for(Iterator it = new HashSet(map.keySet()).iterator(); it.hasNext();) {
  +            Object trans = it.next();
  +            Object orig = factory.returnObject(trans);
  +            assert(orig == map.get(trans));
  +            map.remove(trans);
  +        }
  +        assert(map.size() == 0);
  +        factory.poolClosing(pool);
       }
   }
  
  
  

Reply via email to