package com.alibaba.druid.bvt.pool.exception; import java.sql.SQLException; import junit.framework.TestCase; import org.junit.Assert; import com.alibaba.druid.pool.vendor.OracleExceptionSorter; public class OracleExceptionSorter_userDefined extends TestCase { protected void setUp() throws Exception { System.setProperty("druid.oracle.fatalErrorCodes", "1,2,3,a,"); } protected void tearDown() throws Exception { System.clearProperty("druid.oracle.fatalErrorCodes"); } public void test_userDefinedErrorCodes() throws Exception { OracleExceptionSorter sorter = new OracleExceptionSorter(); Assert.assertEquals(3, sorter.getFatalErrorCodes().size()); Assert.assertTrue(sorter.getFatalErrorCodes().contains(1)); Assert.assertTrue(sorter.getFatalErrorCodes().contains(2)); Assert.assertTrue(sorter.getFatalErrorCodes().contains(3)); Assert.assertTrue(sorter.isExceptionFatal(new SQLException("xx", "xx", 1))); Assert.assertTrue(sorter.isExceptionFatal(new SQLException("xx", "xx", 2))); Assert.assertTrue(sorter.isExceptionFatal(new SQLException("xx", "xx", 3))); Assert.assertFalse(sorter.isExceptionFatal(new SQLException("xx", "xx", 4))); Assert.assertTrue(sorter.isExceptionFatal(new SQLException("xx", "xx", 28))); } }