On 14/12/2009, at 4:35 PM, M.Y. Tjoe wrote:
Anybody has any update on this issues? I am the next lucky winner for this one. I've updated to the latest Wonder library (2009-08-20) and using the latest Juint (4.8.1) but still have this problem. Tried ERXTestCase but that doesn't work for me. My test would not run at all which is good I guess. Also, I am using ERXMemoryAdaptor in the model so I don't know if this is not supported. Any help would be much appreciated.
I'm using JUnit4 and loading models manually when I need them. There may be a better way. In any case, in a superclass of all my test classes is this method:
public static void setUp(String modelName) {
try {
if (EOModelGroup.defaultGroup().modelNamed(modelName) == null) {
EOModel model =
new EOModel(new File("Resources/" + modelName
+ ".eomodeld").toURI().toURL());
EOModelGroup.defaultGroup().addModel(model);
}
} catch (MalformedURLException e) {
throw new RuntimeException("Could not load EO Model.");
}
}
That's called by the following method in the subclasses:
@BeforeClass
public static void setUp() {
setUp(MODEL_NAME);
}
Where MODEL_NAME is defined in the subclass to load the appropriate model. Loading the models manually like this seems to be sufficient to initialise Wonder. This appears on the console when I run any of these tests:
[2009-12-14 16:12:51 CST] <main> Initialized : er.extensions.ERXExtensions
[2009-12-14 16:12:51 CST] <main> Initialized : er.prototypes.ERPrototypes
[2009-12-14 16:12:51 CST] <main> Initialized : er.ajax.Ajax
[2009-12-14 16:12:51 CST] <main> Initialized : er.directtoweb.ERDirectToWeb
[2009-12-14 16:12:51 CST] <main> Initialized : er.javamail.ERJavaMail
[2009-12-14 16:12:51 CST] <main> Initialized : er.selenium.ERSelenium
Again, there may be a better way. But ensuring a model was never loaded twice seemed to get rid of the InvocationTargetExceptions I was getting.