1 21 package net.sf.hajdbc.dialect; 22 23 import net.sf.hajdbc.Dialect; 24 25 import org.easymock.EasyMock; 26 import org.testng.annotations.Test; 27 28 32 @Test 33 public class TestDialectFactory 34 { 35 public void testSerialize() 36 { 37 Dialect dialect = EasyMock.createMock(Dialect.class); 38 39 String id = DialectFactory.serialize(dialect); 40 41 assert id.equals(dialect.getClass().getName()) : id; 42 } 43 44 public void testDeserialize() 45 { 46 this.assertDialect("net.sf.hajdbc.dialect.DefaultDialect", DefaultDialect.class); 47 this.assertDialect("db2", DB2Dialect.class); 48 this.assertDialect("derby", DerbyDialect.class); 49 this.assertDialect("firebird", DefaultDialect.class); 50 this.assertDialect("hsqldb", HSQLDBDialect.class); 51 this.assertDialect("ingres", DefaultDialect.class); 52 this.assertDialect("maxdb", MaxDBDialect.class); 53 this.assertDialect("mckoi", DefaultDialect.class); 54 this.assertDialect("mysql", DefaultDialect.class); 55 this.assertDialect("oracle", MaxDBDialect.class); 56 this.assertDialect("postgresql", PostgreSQLDialect.class); 57 58 this.assertDialect("PostgreSQL", PostgreSQLDialect.class); 59 this.assertDialect("POSTGRESQL", PostgreSQLDialect.class); 60 61 try 62 { 63 Dialect dialect = DialectFactory.deserialize("invalid"); 64 65 assert false : dialect.getClass().getName(); 66 } 67 catch (Exception e) 68 { 69 assert true; 70 } 71 } 72 73 private void assertDialect(String id, Class <? extends Dialect> dialectClass) 74 { 75 try 76 { 77 Dialect dialect = DialectFactory.deserialize(id); 78 79 assert dialectClass.isInstance(dialect) : dialect.getClass().getName(); 80 } 81 catch (Exception e) 82 { 83 assert false : e; 84 } 85 } 86 } 87 | Popular Tags |