db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Bouschen (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JDO-166) Implement new JDO 2 query tests cases concerning deletion by query.
Date Thu, 01 Dec 2005 11:35:31 GMT
    [ 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


Mime
View raw message