You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by lr...@apache.org on 2006/12/21 16:51:58 UTC
svn commit: r489391 - in
/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test:
CrudWithChangeHistory.java PartialUpdateTests.java
Author: lresende
Date: Thu Dec 21 07:51:58 2006
New Revision: 489391
URL: http://svn.apache.org/viewvc?view=rev&rev=489391
Log:
TUSCANY-1008
Modified:
incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java
incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java
Modified: incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java?view=diff&rev=489391&r1=489390&r2=489391
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java (original)
+++ incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java Thu Dec 21 07:51:58 2006
@@ -268,33 +268,6 @@
}
- /**
- * Read graph. Add new DO and apply without seting any attributes.
- *
- */
-/* public void testReadInsertApply() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read some customers
- Command select = das.createCommand("Select * from CUSTOMER");
- DataObject root = select.executeQuery();
-
- //Remember count
- int count = root.getList("CUSTOMER").size();
-
- // Create a new customer
- root.createDataObject("CUSTOMER");
-
- // Build apply changes command
- das.applyChanges(root);
-
- // verify insert
- root = select.executeQuery();
- assertEquals(count + 1, root.getList("CUSTOMER").size());
-
- }*/
-
-
public void testReadModifyApplyWithAssumedID() throws Exception {
DAS das = DAS.FACTORY.createDAS(getConnection());
Modified: incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java?view=diff&rev=489391&r1=489390&r2=489391
==============================================================================
--- incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java (original)
+++ incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java Thu Dec 21 07:51:58 2006
@@ -42,7 +42,10 @@
super.tearDown();
}
- public void testPartialUpdate() throws SQLException {
+ /**
+ * Update with one changed property
+ */
+ public void testPartialUpdateSingleProperty() throws SQLException {
DAS das = DAS.FACTORY.createDAS(getConnection());
Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
@@ -69,13 +72,176 @@
assertEquals("main street", customer.getString("ADDRESS"));
}
- public void testPartialInsert() throws SQLException {
+ /**
+ * Update with all changed properties
+ */
+ public void testPartialUpdateAllProperties() throws SQLException {
DAS das = DAS.FACTORY.createDAS(getConnection());
Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
// Read
DataObject root = readCustomers.executeQuery();
+ DataObject customer = root.getDataObject("CUSTOMER[1]");
+ // Verify
+ assertEquals(1, customer.getInt("ID"));
+
+ customer.setString("LASTNAME", "lastname modified");
+ customer.setString("ADDRESS", "address modified");
+
+ das.applyChanges(root);
+
+ root = readCustomers.executeQuery();
+
+ // If partial update was not used, LASTNAME would not be 'modified'
+ customer = root.getDataObject("CUSTOMER[1]");
+ assertEquals(1, customer.getInt("ID"));
+ assertEquals("lastname modified", customer.getString("LASTNAME"));
+ assertEquals("address modified", customer.getString("ADDRESS"));
+ }
+
+ /**
+ * Insert with no changed properties and no generated ID
+ * Read graph. Add new DO and apply without seting any attributes.
+ *
+ */
+// public void testPartialReadInsertApply() throws Exception {
+//
+// DAS das = DAS.FACTORY.createDAS(getConnection());
+// // Read some customers
+// Command select = das.createCommand("Select * from CUSTOMER");
+// DataObject root = select.executeQuery();
+//
+// //Remember count
+// int count = root.getList("CUSTOMER").size();
+//
+// // Create a new customer
+// root.createDataObject("CUSTOMER");
+//
+// // Build apply changes command
+// das.applyChanges(root);
+//
+// // verify insert
+// root = select.executeQuery();
+// assertEquals(count + 1, root.getList("CUSTOMER").size());
+//
+// }
+
+ /**
+ * Insert with no changed properties to row with generated ID
+ * Read graph. Add new DO and apply without seting any attributes.
+ */
+ public void testPartialInsertWithGeneratedID() throws Exception {
+
+ DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"),getConnection());
+ // Read some companies
+ Command select = das.createCommand("Select * from COMPANY");
+ DataObject root = select.executeQuery();
+
+ //Remember count
+ int count = root.getList("COMPANY").size();
+
+ // Create a new company
+ root.createDataObject("COMPANY");
+
+ // Build apply changes command
+ das.applyChanges(root);
+
+ // verify insert
+ root = select.executeQuery();
+ assertEquals(count + 1, root.getList("COMPANY").size());
+
+ }
+
+ /**
+ * Insert with 1 changed property that is not the ID
+ * @throws SQLException
+ */
+ public void testPartialInsertWithSinglePropertyChange() throws Exception {
+
+ DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"),getConnection());
+ // Read some company
+ Command select = das.createCommand("Select * from COMPANY");
+ DataObject root = select.executeQuery();
+
+ //Remember count
+ int count = root.getList("COMPANY").size();
+
+ // Create a new company
+ DataObject company = root.createDataObject("COMPANY");
+ company.setString("NAME", "New company name");
+
+ // Build apply changes command
+ das.applyChanges(root);
+
+ // verify insert
+ root = select.executeQuery();
+ assertEquals(count + 1, root.getList("COMPANY").size());
+ }
+
+ /**
+ * Insert with 1 changed property that is the ID
+ * @throws SQLException
+ */
+ public void testPartialInsertWithIdChange() throws SQLException {
+ DAS das = DAS.FACTORY.createDAS(getConnection());
+ Command readCustomers = das.createCommand("select * from CUSTOMER");
+
+ // Read
+ DataObject root = readCustomers.executeQuery();
+
+ // Create a new customer
+ DataObject newCust = root.createDataObject("CUSTOMER");
+ newCust.set("ID", Integer.valueOf(200));
+ // Purposely do not set lastname to let it default to 'Garfugengheist'
+ // newCust.set("LASTNAME", "Gerkin" );
+
+ das.applyChanges(root);
+
+ Command readNewCust = das.createCommand("select * from CUSTOMER where ID = 200");
+ root = readNewCust.executeQuery();
+
+ // If partial insert was not used, LASTNAME would not be
+ // 'Garfugengheist'
+ newCust = root.getDataObject("CUSTOMER[1]");
+ assertEquals(200, newCust.getInt("ID"));
+ assertEquals("Garfugengheist", newCust.getString("LASTNAME"));
+ assertNull(newCust.getString("ADDRESS"));
+
+ }
+
+ public void testPartialInsertWithAllPropertyChange() throws SQLException {
+ DAS das = DAS.FACTORY.createDAS(getConnection());
+ Command readCustomers = das.createCommand("select * from CUSTOMER");
+
+ // Read
+ DataObject root = readCustomers.executeQuery();
+
+ // Create a new customer
+ DataObject newCust = root.createDataObject("CUSTOMER");
+ newCust.set("ID", Integer.valueOf(300));
+ newCust.set("ADDRESS", "5528 Wells Fargo Drive");
+ newCust.set("LASTNAME", "Gerkin" );
+
+ das.applyChanges(root);
+
+ Command readNewCust = das.createCommand("select * from CUSTOMER where ID = 300");
+ root = readNewCust.executeQuery();
+
+ newCust = root.getDataObject("CUSTOMER[1]");
+ assertEquals(300, newCust.getInt("ID"));
+ assertEquals("Gerkin", newCust.getString("LASTNAME"));
+ assertEquals("5528 Wells Fargo Drive", newCust.getString("ADDRESS"));
+
+ }
+
+ public void testPartialInsert() throws SQLException {
+ DAS das = DAS.FACTORY.createDAS(getConnection());
+ Command readCustomers = das.createCommand("select * from CUSTOMER");
+
+ // Read
+ DataObject root = readCustomers.executeQuery();
+
// Create a new customer
DataObject newCust = root.createDataObject("CUSTOMER");
newCust.set("ID", Integer.valueOf(100));
@@ -96,4 +262,6 @@
assertEquals("5528 Wells Fargo Drive", newCust.getString("ADDRESS"));
}
+
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org