You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by kw...@apache.org on 2006/02/22 00:05:07 UTC
svn commit: r379616 - in /incubator/tuscany/java/das/rdb/src:
main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java
test/java/org/apache/tuscany/das/rdb/test/DefectTests.java
Author: kwilliams
Date: Tue Feb 21 15:05:03 2006
New Revision: 379616
URL: http://svn.apache.org/viewcvs?rev=379616&view=rev
Log:
Test and fix for TUSCANY-35
Modified:
incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java
incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java
Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java?rev=379616&r1=379615&r2=379616&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java (original)
+++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java Tue Feb 21 15:05:03 2006
@@ -113,9 +113,13 @@
public void execute(DataObject root) {
DebugUtil.debugln(getClass(), debug, "Executing ApplyChangesCmd");
+ //Assertions
if (dasConnection == null)
- throw new RuntimeException("A connection must be provided");
+ throw new Error("A connection must be provided");
+ if (!root.equals(root.getDataGraph().getRootObject()))
+ throw new Error("'root' argument must be the root of the datagraph");
+
Changes changes = summarizer.loadChanges(root);
boolean success = false;
Modified: incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java?rev=379616&r1=379615&r2=379616&view=diff
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java (original)
+++ incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java Tue Feb 21 15:05:03 2006
@@ -297,4 +297,30 @@
}
+ /**
+ * Test bug reported by Philip K Warren
+ * Silent fail if a non-datagraph root is passed to ApplyChangesCommand
+ */
+ public void testTuscany35() throws Exception {
+
+ CommandGroup commandGroup = CommandGroup.FACTORY.createCommandGroup(getConfig("CustOrdersConnectionProps.xml"));
+
+ Command read = commandGroup.getCommand("all customers");
+ DataObject root = read.executeQuery();
+
+ //Update first customer
+ DataObject cust1 = root.getDataObject("CUSTOMER[1]");
+ cust1.setString("LASTNAME", "Pavick");
+
+ ApplyChangesCommand update = commandGroup.getApplyChangesCommand();
+ //pass cust1 instead of root
+ update.execute(cust1);
+// update.execute(root);
+
+ // Verify update - reuse select command
+ root = read.executeQuery();
+ assertEquals("Pavick", root.get("CUSTOMER[1]/LASTNAME"));
+
+ }
+
}