Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormtaal2006-10-25 19:24:24 +0000
committermtaal2006-10-25 19:24:24 +0000
commitcc37454a4fbef231fab891430851f20d49f008ac (patch)
treee35b086adae91e21a015761a43448085a17e220c
parent1a5028225126132d9a012b32d6adc784be934642 (diff)
downloadorg.eclipse.emf.teneo-cc37454a4fbef231fab891430851f20d49f008ac.tar.gz
org.eclipse.emf.teneo-cc37454a4fbef231fab891430851f20d49f008ac.tar.xz
org.eclipse.emf.teneo-cc37454a4fbef231fab891430851f20d49f008ac.zip
Improved testcase after input from Dan Connelybuild_200610260523
-rw-r--r--tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/sample/ExtendedPO2Action.java188
1 files changed, 139 insertions, 49 deletions
diff --git a/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/sample/ExtendedPO2Action.java b/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/sample/ExtendedPO2Action.java
index ddc755d5b..6cec671b5 100644
--- a/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/sample/ExtendedPO2Action.java
+++ b/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/sample/ExtendedPO2Action.java
@@ -11,13 +11,20 @@
* Martin Taal
* </copyright>
*
- * $Id: ExtendedPO2Action.java,v 1.1 2006/07/04 22:12:15 mtaal Exp $
+ * $Id: ExtendedPO2Action.java,v 1.2 2006/10/25 19:24:24 mtaal Exp $
*/
package org.eclipse.emf.teneo.test.emf.sample;
+import java.io.IOException;
+import java.util.Calendar;
+import java.util.Collections;
import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.Iterator;
+import java.util.List;
+import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.teneo.samples.emf.sample.epo2.Customer;
import org.eclipse.emf.teneo.samples.emf.sample.epo2.EPO2Factory;
import org.eclipse.emf.teneo.samples.emf.sample.epo2.EPO2Package;
@@ -25,15 +32,17 @@ import org.eclipse.emf.teneo.samples.emf.sample.epo2.GlobalAddress;
import org.eclipse.emf.teneo.samples.emf.sample.epo2.Item;
import org.eclipse.emf.teneo.samples.emf.sample.epo2.OrderStatus;
import org.eclipse.emf.teneo.samples.emf.sample.epo2.PurchaseOrder;
+import org.eclipse.emf.teneo.samples.emf.sample.epo2.Supplier;
import org.eclipse.emf.teneo.samples.emf.sample.epo2.USAddress;
import org.eclipse.emf.teneo.test.AbstractTestAction;
+import org.eclipse.emf.teneo.test.StoreTestException;
import org.eclipse.emf.teneo.test.stores.TestStore;
/**
* Tests the extended po 2 example
*
* @author <a href="mailto:mtaal@elver.org">Martin Taal</a>
- * @version $Revision: 1.1 $ $Date: 2006/07/04 22:12:15 $
+ * @version $Revision: 1.2 $ $Date: 2006/10/25 19:24:24 $
*/
public abstract class ExtendedPO2Action extends AbstractTestAction
{
@@ -46,55 +55,136 @@ public abstract class ExtendedPO2Action extends AbstractTestAction
public void doAction(TestStore store)
{
final EPO2Factory factory = EPO2Factory.eINSTANCE;
-
- store.beginTransaction();
-
- PurchaseOrder po = factory.createPurchaseOrder();
-
- po.setComment("my comment");
-
- USAddress adr = factory.createUSAddress();
- adr.setCity("Doorn");
- adr.setCountry("Netherlands");
- adr.setName("M. Taal");
- adr.setState("Utrecht");
- adr.setStreet("Nassaulaan 7");
- adr.setZip(3941);
- po.setBillTo(adr);
-
- po.setOrderDate(new Date());
+ {
+ Supplier supplier = factory.createSupplier(); // This is the root. Keep it ....
+ supplier.setName("Computer City");
- Customer cust = factory.createCustomer();
- cust.setCustomerID(5000);
- po.setCustomer(cust);
+ PurchaseOrder po = factory.createPurchaseOrder();
+ supplier.getOrders().add(po);
+ PurchaseOrder prevpo = factory.createPurchaseOrder();
+ supplier.getOrders().add(prevpo);
+
+ po.setComment("a new purchase order");
+ prevpo.setComment("the previous purchase order");
+
+ USAddress adr = factory.createUSAddress();
+ adr.setCity("Doorn");
+ adr.setCountry("Netherlands");
+ adr.setName("M. Taal");
+ adr.setState("Utrecht");
+ adr.setStreet("Nassaulaan 7");
+ adr.setZip(3941);
+
+ USAddress adr1 = factory.createUSAddress();
+ adr1.setCity("Doorn");
+ adr1.setCountry("Netherlands");
+ adr1.setName("M. Taal");
+ adr1.setState("Utrecht");
+ adr1.setStreet("Nassaulaan 7");
+ adr1.setZip(3941);
+
+ //both have same billto
+ po.setBillTo(adr);
+ prevpo.setBillTo(adr1);
+
+ po.setOrderDate(new Date());
+ Calendar cal = new GregorianCalendar();
+ cal.add(Calendar.DAY_OF_MONTH,-5);
+ prevpo.setOrderDate(cal.getTime());
+
+ Customer cust = factory.createCustomer();
+ supplier.getCustomers().add(cust);
+ cust.setCustomerID(5000);
+ cust.getOrders().add(po); // Added by DSC for JCR validation. Remove later....
+ cust.getOrders().add(prevpo); // Added by DSC for JCR validation. Remove later....
+ po.setCustomer(cust);
+ prevpo.setCustomer(cust);
+
+ GlobalAddress globadr = factory.createGlobalAddress();
+ globadr.setCountry("Belgium");
+ globadr.setCountryCode(36);
+ globadr.setName("Belgium Office");
+ globadr.getLocation().add("MY GLOBAL LOCATION");
+
+ GlobalAddress globadr1 = factory.createGlobalAddress();
+ globadr1.setCountry("Belgium");
+ globadr1.setCountryCode(36);
+ globadr1.setName("Belgium Office");
+ globadr1.getLocation().add("MY GLOBAL LOCATION");
+
+ // both have same shipto
+ po.setShipTo(globadr);
+ prevpo.setShipTo(globadr1);
+
+ po.setStatus(OrderStatus.COMPLETE_LITERAL);
+ prevpo.setStatus(OrderStatus.BACK_ORDER_LITERAL);
+
+ Item item = factory.createItem();
+ item.setComment("I like this product");
+ item.setPartNum("500.11.22");
+ item.setProductName("Dell Latitude");
+ item.setQuantity(50);
+ item.setShipDate(new Date());
+ item.setOrder(po); // Added by DSC for JCR validation. Remove later....
+
+ Item item2 = factory.createItem();
+ item2.setComment("A few of these for me.");
+ item2.setPartNum("500.11.2000");
+ item2.setProductName("Sun Opteron Workstation");
+ item2.setQuantity(200);
+ item2.setShipDate(new Date());
+ item2.setOrder(prevpo); // Added by DSC for JCR validation. Remove later....
+
+ po.getItems().add(item);
+ prevpo.getItems().add(item2);
+ po.setPreviousOrder(prevpo);
+ store.beginTransaction();
+ store.store(supplier);
+ store.commitTransaction();
+ /*
+ final Resource res = store.getResource();
+ res.getContents().add(supplier);
+ try {
+ res.save(Collections.EMPTY_MAP);
+ } catch (IOException e) {
+ throw new StoreTestException("IOException", e);
+ }
+ */
+ }
+
+ {
+ store.beginTransaction();
+// final Resource res2 = store.getResource();
+// Supplier supplierTest = (Supplier)res2.getContents().get(0);
+ Supplier supplierTest = (Supplier)store.getObject(Supplier.class);
+ List customers = supplierTest.getCustomers();
+ assertNotNull(customers);
+ assertTrue(customers.size()==1);
+ assertNotNull(customers.get(0));
+ assertTrue(((Customer)customers.get(0)).getCustomerID() > 0);
+ assertNotNull(((Customer)customers.get(0)).getOrders());
+ assertTrue(((Customer)customers.get(0)).getOrders().size()==2);
+ for (Iterator it = supplierTest.getOrders().iterator(); it.hasNext(); )
+ {
+ PurchaseOrder potest = (PurchaseOrder)it.next();
+ assertNotNull(potest.getStatus().getLiteral());
+ assertTrue(potest.getItems().size()>0);
+ Item itemtest = (Item)potest.getItems().get(0);
+ assertNotNull(itemtest.eContainer());
+ assertNotNull(itemtest.getOrder());
+ assertNotNull(itemtest.getShipDate());
+ assertNotNull(itemtest.getPartNum());
+ assertNotNull(potest.getCustomer());
+ USAddress billTo = (USAddress)potest.getBillTo();
+ assertNotNull(billTo);
+ assertNotNull(billTo.getStreet());
+ GlobalAddress shipTo = (GlobalAddress)potest.getShipTo();
+ assertNotNull(shipTo);
+ assertTrue(shipTo.getCountryCode() > 0);
+ }
+ store.commitTransaction();
+ }
- GlobalAddress globadr = factory.createGlobalAddress();
- globadr.setCountry("Belgium");
- globadr.setCountryCode(36);
- globadr.setName("Belgium Office");
- globadr.getLocation().add("MY GLOBAL LOCATION");
- po.setShipTo(globadr);
-
- po.setStatus(OrderStatus.COMPLETE_LITERAL);
-
- Item item = factory.createItem();
- item.setComment("I like this product");
- item.setPartNum("500.11.22");
- item.setProductName("Dell Latitude");
- item.setQuantity(50);
- item.setShipDate(new Date());
-
- po.getItems().add(item);
- store.store(po);
- store.commitTransaction();
-
- store.beginTransaction();
- PurchaseOrder potest = (PurchaseOrder)store.getObject(PurchaseOrder.class);
- Item itemtest = (Item)potest.getItems().get(0);
- assertTrue(itemtest.eContainer() != null);
- assertTrue(potest.getCustomer() != null);
- store.commitTransaction();
-
checkContainerForSeparatelyReadItem(store);
}

Back to the top