Issue Details (XML | Word | Printable)

Key: JDO-165
Type: New Feature New Feature
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Michael Watzek
Reporter: Michael Watzek
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
JDO

Implement new JDO 2 query tests cases concerning SQL queries.

Created: 04/Oct/05 09:43 PM   Updated: 24/Nov/05 05:43 PM
Return to search
Component/s: tck2
Affects Version/s: None
Fix Version/s: None

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works JDO-165.patch 2005-11-21 10:28 PM Michael Watzek 30 kB
File Licensed for inclusion in ASF works JDO-165.patch2 2005-11-24 02:42 AM Michael Watzek 31 kB

Resolution Date: 24/Nov/05 05:43 PM


 Description  « Hide
We need 4 new test classes, one for each of the following assertions:

- A14.7-1: In this case, the factory method that takes the language string and Object is used: newQuery (String language, Object query). The language parameter is javax.jdo.query.SQL and the query parameter is the SQL query string.
- A14.7-2: The only methods that can be used are setClass to establish the candidate class, setUnique to declare that there is only one result row, and setResultClass to establish the result class.
- A14.7-3: SQL queries can be defined without a candidate class. These queries can be found by name using the factory method newNamedQuery, specifying the class as null, or can be constructed without a candidate class.
- A14.7-4: Table 7: Shape of Result of SQL Query.

Details can be found on Wiki page http://wiki.apache.org/jdo/QueryTests#SQLQueries.


 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Michael Watzek added a comment - 21/Nov/05 10:28 PM
The attached patch implements the assertions above.

Michael Bouschen added a comment - 23/Nov/05 10:22 PM
Looks good. Some comments:

ShapeOfResult:
- I guess the "C" in the comment of the first two queries in VALID_SQL_QUERIES means candidate class, correct?
- At the first glance the code looks like you missed testing queries 3, 5, and 7. Then I figured out the test methods calls a method which calls another method which then executes two queries. I think the code would be easier if the test methods directly execute the two SQL queries.

AllowedAPIMethods:
- Please add a comment to method testNegative describing that the SQL query is correct, but the test calls Query API method that are not allowed for SQL queries. Maybe rename checkSetters to checkProhibitedSetters.

QueryTests:
- Please add a sentence to the javadoc of method executeSQLQuery desribing that the sql parameter may have an argument {0} which is replaced by the current schema name.

Michael Watzek added a comment - 24/Nov/05 02:42 AM
The second patch implements the comments above.

Michael Bouschen added a comment - 24/Nov/05 02:54 AM
Looks good, no comments!

Michael Watzek added a comment - 24/Nov/05 05:43 PM
The second patch has been checked in (Revision 348505).