> From: Stephen McConnell [mailto:[EMAIL PROTECTED] > > Berin Loritsch wrote: > > > >I am glad things start up OK, but how do I set up the Connection and > >then test that it handles it OK? > > > > I really have not thought about this a great deal - so this > is off the > top of my head .... (a) create a client componet - declare it as > dependent on the server component (so the server will be launched whe > the client request a refercence - or alternatively - declare > the server > as activation="true")., (b) in the initialize or start method of you > client - invoke operations against the appropriate server. > > Probems we have to deal with: > > (a) Using a fixed version of Phoneix which includes the > GenericBlockContext becuase your referencing resource that > are Phoenix depedent which makes infomover phoenix dependent > (see email to Paul on this topic) - also the fixed-Phoenix > icludes Phoenix recognition of .xtype meta-info (although > in this demo I don't think that an issue) > > (b) Using a fixed version of cornerstone that includes .xtype > resorces so that Merlin can take care of the work around re. > BlockContext stuff. > > I can commit all of this to the Merlin lib and add the infomover.xml > file to src/etc directory and you should be able to play from there. > > Sound ok?
Sounds good to me. This solution is a fundamental change from the ExcaliburTestCase. The ExcaliburTestCase *was* the client, which works really well for JUnit. Unfortunately in this case, I am not sure that it is a good way to test the Phoenix blocks. One question though, when you say "fixed version of Phoenix" what exactly do you mean? I don't want to develop against a fork--so it would have to be changes that are *in* the Phoenix CVS repository. We might have to have a different test framework for this.... If so, we might have to revive the "testlet" repository to be an extension of JUnit or something. If we make the automated tests a Component that lives inside the containers, we can do something that is as easy to use as JUnit. What I want is something simple to write like this: package org.apache.avalon.testlet; import junit.framework.Assert; public interface TestCase { void runTests(); } public abstract class AbstractTestCase extends Assert implements TestCase { public void setUp() {} public void tearDown() {} public void runTests() { setUp(); // perform all the complex reflection calls for every // "test" method tearDown(); } } package org.apache.infomover.connection.test; import org.apache.infomover.connection.*; import org.apache.infomover public class ConnectionTestCase extends AbstractTestCase implements Serviceable { private ConnectionManager m_connections; public void service( ServiceManager manager ) { m_connections = (ConnectionManager) manager.lookup( ConnectionManager.ROLE); } public void testFoo() { // perform the required logic } } -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>