dirkv       2003/08/11 16:34:52

  Modified:    dbcp/src/test/org/apache/commons/dbcp/jdbc2pool
                        TestJdbc2PoolDataSource.java
  Log:
  Bugzilla Bug 1892: Per User methods not working in Jdbc2PoolDataSource
  - add junit test to make sure everything is ok
  
  Revision  Changes    Path
  1.9       +54 -4     
jakarta-commons/dbcp/src/test/org/apache/commons/dbcp/jdbc2pool/TestJdbc2PoolDataSource.java
  
  Index: TestJdbc2PoolDataSource.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/dbcp/src/test/org/apache/commons/dbcp/jdbc2pool/TestJdbc2PoolDataSource.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- TestJdbc2PoolDataSource.java      2 Jun 2003 04:54:12 -0000       1.8
  +++ TestJdbc2PoolDataSource.java      11 Aug 2003 23:34:52 -0000      1.9
  @@ -76,6 +76,7 @@
   
   /**
    * @author John McNally
  + * @author Dirk Verbeeck
    * @version $Revision$ $Date$
    */
   public class TestJdbc2PoolDataSource extends TestConnectionPool {
  @@ -333,6 +334,55 @@
           {
               c[i].close();
           }
  +    }
  +    
  +    public void testPerUserMethods() throws Exception {
  +        Jdbc2PoolDataSource tds = (Jdbc2PoolDataSource) ds;
  +        
  +        // you need to set maxActive otherwise there is no accounting
  +        tds.setPerUserMaxActive("u1", new Integer(5));
  +        tds.setPerUserMaxActive("u2", new Integer(5));
  +        
  +        assertEquals(0, tds.getNumActive());
  +        assertEquals(0, tds.getNumActive("u1", "p1"));
  +        assertEquals(0, tds.getNumActive("u2", "p2"));
  +        assertEquals(0, tds.getNumIdle());
  +        assertEquals(0, tds.getNumIdle("u1", "p1"));
  +        assertEquals(0, tds.getNumIdle("u2", "p2"));
  +        
  +        Connection conn = tds.getConnection();
  +        assertNotNull(conn);
  +        assertEquals(1, tds.getNumActive());
  +        assertEquals(0, tds.getNumActive("u1", "p1"));
  +        assertEquals(0, tds.getNumActive("u2", "p2"));
  +        assertEquals(0, tds.getNumIdle());
  +        assertEquals(0, tds.getNumIdle("u1", "p1"));
  +        assertEquals(0, tds.getNumIdle("u2", "p2"));
  +
  +        conn.close();
  +        assertEquals(0, tds.getNumActive());
  +        assertEquals(0, tds.getNumActive("u1", "p1"));
  +        assertEquals(0, tds.getNumActive("u2", "p2"));
  +        assertEquals(1, tds.getNumIdle());
  +        assertEquals(0, tds.getNumIdle("u1", "p1"));
  +        assertEquals(0, tds.getNumIdle("u2", "p2"));
  +
  +        conn = tds.getConnection("u1", "p1");
  +        assertNotNull(conn);
  +        assertEquals(0, tds.getNumActive());
  +        assertEquals(1, tds.getNumActive("u1", "p1"));
  +        assertEquals(0, tds.getNumActive("u2", "p2"));
  +        assertEquals(1, tds.getNumIdle());
  +        assertEquals(0, tds.getNumIdle("u1", "p1"));
  +        assertEquals(0, tds.getNumIdle("u2", "p2"));
  +
  +        conn.close();
  +        assertEquals(0, tds.getNumActive());
  +        assertEquals(0, tds.getNumActive("u1", "p1"));
  +        assertEquals(0, tds.getNumActive("u2", "p2"));
  +        assertEquals(1, tds.getNumIdle());
  +        assertEquals(1, tds.getNumIdle("u1", "p1"));
  +        assertEquals(0, tds.getNumIdle("u2", "p2"));
       }
       
       public void testMultipleThreads() throws Exception {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to