Hi Matt,

On 29 Nov 2007 at 9:41, Matt Raible wrote:

> We're open to suggestions on how to improve this. The reason we use
> negative ids is because if we don't, Oracle gets its sequences messed
> up. You could fix things in your project by modifying sample-data.xml
> to have positive keys and then run "appfuse:full-source" and modify
> all your tests. Or modify AMP to generate positive ids.

Would you consider it normal practice to run unit tests when deploying to a 
production system?  I would have thought that unit testing would be done for 
development and test environments, but not for production environments.

My gut feeling is that the solution to the default-data problem would be to 
decouple it from tests if possible, so that it can be run independently of 
them.  I think the idea of negative IDs works nicely for development and 
testing, but they probably have no place in a production environment.

> On 11/29/07, Laith Al-Khateeb <[EMAIL PROTECTED]> wrote:
> > Yes you're right, that's because the ActionTest cases expect negative IDs
> > (-1, -2) to be in the database, which are used in sample-data.xml  but that
> > I didn't specify in default-data.xml (which is used when prod is activated).
> >
> > Ok, to step back a bit. If I was not going to put any data for my tables in
> > default-data.xml, then the tests will still fail when activating the prod
> > profile and that's because the ActionTests always assume that there will be
> > records with negative IDs in the database.
> >
> > This is from action-test.ftl:
> >
> > public void testEdit() throws Exception {
> >         log.debug("testing edit...");
> >         action.${setIdMethodName}(-1L);
> >         assertNull(action.get${pojo.shortName} ());
> >         assertEquals("success", action.edit());
> >         assertNotNull(action.get${pojo.shortName}());
> >         assertFalse(action.hasActionErrors());
> >     }
> >
> >
> > So in effect, the line of "action.${setIdMethodName}(-1L);"
> > will always fail in prod.
> >
> > Now the question is whether this is a bug or whether it is there by design
> > (to prevent people from running tests in prod), in which case loading data
> > from default-data.xml becomes an unusable feature.

Cheers,
Rob Hills
Waikiki, Western Australia
Mobile +61 (412) 904-357
Fax: +61 (8) 9529-2137

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to