Skip to content

Commit 55d4e6a

Browse files
committed
HBX-3180: Improve the implementation of OverrideRepository
Signed-off-by: Koen Aers <[email protected]>
1 parent b71060a commit 55d4e6a

File tree

2 files changed

+152
-173
lines changed

2 files changed

+152
-173
lines changed

jbt/src/test/java/org/hibernate/tool/orm/jbt/api/wrp/OverrideRepositoryWrapperTest.java

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,16 @@
1717
*/
1818
package org.hibernate.tool.orm.jbt.api.wrp;
1919

20-
import static org.junit.jupiter.api.Assertions.assertEquals;
21-
import static org.junit.jupiter.api.Assertions.assertFalse;
22-
import static org.junit.jupiter.api.Assertions.assertNotNull;
23-
import static org.junit.jupiter.api.Assertions.assertSame;
24-
import static org.junit.jupiter.api.Assertions.assertTrue;
25-
2620
import java.io.File;
2721
import java.io.FileWriter;
2822
import java.lang.reflect.Field;
23+
import java.lang.reflect.Method;
2924
import java.util.List;
3025

3126
import org.hibernate.mapping.Table;
3227
import org.hibernate.tool.api.reveng.RevengStrategy;
28+
import org.hibernate.tool.api.reveng.TableIdentifier;
29+
import org.hibernate.tool.internal.export.common.GenericExporter;
3330
import org.hibernate.tool.internal.reveng.strategy.DelegatingStrategy;
3431
import org.hibernate.tool.internal.reveng.strategy.OverrideRepository;
3532
import org.hibernate.tool.internal.reveng.strategy.TableFilter;
@@ -39,6 +36,8 @@
3936
import org.junit.jupiter.api.BeforeEach;
4037
import org.junit.jupiter.api.Test;
4138

39+
import static org.junit.jupiter.api.Assertions.*;
40+
4241
public class OverrideRepositoryWrapperTest {
4342

4443
private static final String HIBERNATE_REVERSE_ENGINEERING_XML =
@@ -47,7 +46,7 @@ public class OverrideRepositoryWrapperTest {
4746
" '-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN' "+
4847
" 'http://hibernate.org/dtd/hibernate-reverse-engineering-3.0.dtd'>"+
4948
"<hibernate-reverse-engineering> "+
50-
" <table name='FOO'/> "+
49+
" <table name='FOO' class='TheFoo'/> "+
5150
"</hibernate-reverse-engineering> ";
5251

5352
private OverrideRepositoryWrapper overrideRepositoryWrapper = null;
@@ -72,20 +71,18 @@ public void testAddFile() throws Exception {
7271
FileWriter fileWriter = new FileWriter(file);
7372
fileWriter.write(HIBERNATE_REVERSE_ENGINEERING_XML);
7473
fileWriter.close();
75-
Field tablesField = wrappedOverrideRepository.getClass().getDeclaredField("tables");
76-
tablesField.setAccessible(true);
77-
Object object = tablesField.get(wrappedOverrideRepository);
78-
List<?> tables = (List<?>)object;
79-
assertNotNull(tables);
80-
assertTrue(tables.isEmpty());
74+
Field tableToClassNameField = wrappedOverrideRepository.getClass().getDeclaredField("tableToClassName");
75+
tableToClassNameField.setAccessible(true);
76+
Object object = tableToClassNameField.get(wrappedOverrideRepository);
77+
Method getMethod = object.getClass().getDeclaredMethod("get", TableIdentifier.class);
78+
assertNotNull(getMethod);
79+
getMethod.setAccessible(true);
80+
TableIdentifier ti = TableIdentifier.create(null, null, "FOO");
81+
Object className = getMethod.invoke(object,ti);
82+
assertNull(className);
8183
overrideRepositoryWrapper.addFile(file);
82-
object = tablesField.get(wrappedOverrideRepository);
83-
tables = (List<?>)object;
84-
assertNotNull(tables);
85-
assertFalse(tables.isEmpty());
86-
Table table = (Table)tables.get(0);
87-
assertNotNull(table);
88-
assertEquals("FOO", table.getName());
84+
className = getMethod.invoke(object,ti);
85+
assertEquals("TheFoo", className);
8986
}
9087

9188
@Test

0 commit comments

Comments
 (0)