From e6fe8559f03e7548dd058bb9c8a6322e49da4ddc Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Sun, 26 Feb 2012 18:45:47 +0000 Subject: [PATCH] [#978] Schema.getTables() and similar methods return empty lists when Schema is mapped with SchemaMapping [#1175] Factory.use() seems to render SQL with the Schema name still present --- .../src/org/jooq/test/jOOQHSQLDBTest2.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest2.java b/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest2.java index ddf02f5dbd..6e83170794 100644 --- a/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest2.java +++ b/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest2.java @@ -54,6 +54,7 @@ import static org.jooq.test.oracle.generatedclasses.test.Tables.V_LIBRARY; import java.math.BigDecimal; import java.math.BigInteger; import java.sql.Date; +import java.util.List; import org.jooq.ArrayRecord; import org.jooq.DataType; @@ -67,6 +68,7 @@ import org.jooq.UpdatableTable; import org.jooq.conf.MappedSchema; import org.jooq.conf.RenderMapping; import org.jooq.conf.Settings; +import org.jooq.conf.SettingsTools; import org.jooq.impl.Factory; import org.jooq.test.hsqldb.generatedclasses.Public; import org.jooq.test.hsqldb.generatedclasses.PublicFactory; @@ -116,10 +118,20 @@ public class jOOQHSQLDBTest2 extends jOOQAbstractTest< @Override protected Factory create(Settings settings) { settings = (settings != null) ? settings : new Settings(); - settings.withRenderMapping(new RenderMapping() - .withSchemata(new MappedSchema() - .withInput(TAuthor().getSchema().getName()) - .withOutput(Public.PUBLIC.getName()))); + RenderMapping mapping = SettingsTools.getRenderMapping(settings); + List schemata = mapping.getSchemata(); + + if (schemata.size() == 0) { + schemata.add(new MappedSchema() + .withInput(TAuthor().getSchema().getName()) + .withOutput(Public.PUBLIC.getName())); + } + else { + schemata.get(0) + .withInput(TAuthor().getSchema().getName()) + .withOutput(Public.PUBLIC.getName()); + } + return new PublicFactory(getConnection(), settings); }