[ http://issues.apache.org/jira/browse/JDO-166?page=comments#action_12359034 ]
Michael Bouschen commented on JDO-166: -------------------------------------- Looks good. However, I propose to update the comments in DeleteQueryElements, because I think some of them are misleading, e.g. "The query may fail because there is a result, or because there is a result class". This sounds like you try to test two scenarios with a single query. Actually, there is one test query having a result clause, another having a result class and this test query has both a result clause and a result class. So I think your test class coveres everything we should test. I propose to change the comment to: "This query is an invalid delete query, because it defines a result clause and a result class". Please have a look at the other comments in INVALID_QUERIES. > Implement new JDO 2 query tests cases concerning deletion by query. > ------------------------------------------------------------------- > > Key: JDO-166 > URL: http://issues.apache.org/jira/browse/JDO-166 > Project: JDO > Type: New Feature > Components: tck20 > Reporter: Michael Watzek > Assignee: Michael Watzek > Attachments: JDO-166.patch, JDO-166.patch2 > > We need 4 new test classes, one for each of the following assertions: > - A14.8-1: These methods delete the instances of affected classes that pass > the filter, and all dependent instances. Affected classes are the candidate > class and its persistence-capable subclasses. > - A14.8-2: The number of instances of affected classes that were deleted is > returned. Embedded instances and dependent instances are not counted in the > return value. > - A14.8-3: Query elements filter, parameters, imports, variables, and unique > are valid in queries used for delete. Elements result, result class, range, > grouping, and ordering are invalid. If any of these elements is set to its > non-default value when one of the deletePersistentAll methods is called, a > JDOUserException is thrown and no instances are deleted. > - A14.8-4: Dirty instances of affected classes are first flushed to the > datastore. Instances already in the cache when deleted via these methods or > brought into the cache as a result of these methods undergo the life cycle > transitions as if deletePersistent had been called on them. That is, if an > affected class implements the DeleteCallback interface, the instances to be > deleted are instantiated in memory and the jdoPreDelete method is called > prior to deleting the instance in the datastore. If any LifecycleListener > instances are registered with affected classes, these listeners are called > for each deleted instance. Before returning control to the application, > instances of affected classes in the cache are refreshed by the > implementation so their status in the cache reflects whether they were > deleted from the datastore. > Details can be found on Wiki page > http://wiki.apache.org/jdo/QueryTests#DeletionByQuery. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
