1   package org.org.usurper;
2   
3   import java.util.HashSet;
4   import java.util.Set;
5   
6   import junit.framework.TestCase;
7   
8   import org.org.usurper.TestCommons.NullPropertyException;
9   import org.org.usurper.handlers.additional.ValueObjectPropertyTypeHandler;
10  import org.org.usurper.handlers.basic.AbstractPropertyTypeHandler;
11  import org.org.usurper.jpetstoredomain.Account;
12  import org.org.usurper.jpetstoredomain.Cart;
13  import org.org.usurper.jpetstoredomain.CartItem;
14  import org.org.usurper.jpetstoredomain.Category;
15  import org.org.usurper.jpetstoredomain.Item;
16  import org.org.usurper.jpetstoredomain.LineItem;
17  import org.org.usurper.jpetstoredomain.Order;
18  import org.org.usurper.jpetstoredomain.Product;
19  import org.org.usurper.setup.UsurperGeneratorSetup;
20  
21  public class JPetStoreDomainTest extends TestCase {
22      public void testDomainObjects() {
23  
24          // creating type handlers
25          Set<AbstractPropertyTypeHandler> typeHandlers = new HashSet<AbstractPropertyTypeHandler>();
26          typeHandlers.add(new ValueObjectPropertyTypeHandler(Account.class, Cart.class, CartItem.class, Category.class, Item.class, LineItem.class, Order.class, Product.class));
27          UsurperGeneratorSetup usurperGeneratorSetup = new UsurperGeneratorSetup();
28          usurperGeneratorSetup.registerPropertyTypeHandlers(typeHandlers);
29  
30          UsurperGenerator<Account> accountUsurper = new UsurperGenerator<Account>(Account.class, usurperGeneratorSetup);
31          UsurperGenerator<Cart> cartUsurper = new UsurperGenerator<Cart>(Cart.class, usurperGeneratorSetup);
32          UsurperGenerator<CartItem> cartItemUsurper = new UsurperGenerator<CartItem>(CartItem.class, usurperGeneratorSetup);
33          UsurperGenerator<Category> categoryUsurper = new UsurperGenerator<Category>(Category.class, usurperGeneratorSetup);
34          UsurperGenerator<Item> itemUsurper = new UsurperGenerator<Item>(Item.class, usurperGeneratorSetup);
35          UsurperGenerator<LineItem> lineItemUsurper = new UsurperGenerator<LineItem>(LineItem.class, usurperGeneratorSetup);
36          UsurperGenerator<Order> orderUsurper = new UsurperGenerator<Order>(Order.class, usurperGeneratorSetup);
37          UsurperGenerator<Product> productUsurper = new UsurperGenerator<Product>(Product.class, usurperGeneratorSetup);
38  
39          try {
40              TestCommons.auditVO(accountUsurper.generateUsurper());
41              TestCommons.auditVO(cartUsurper.generateUsurper());
42              TestCommons.auditVO(cartItemUsurper.generateUsurper());
43              TestCommons.auditVO(categoryUsurper.generateUsurper());
44              TestCommons.auditVO(itemUsurper.generateUsurper());
45              TestCommons.auditVO(lineItemUsurper.generateUsurper());
46              TestCommons.auditVO(orderUsurper.generateUsurper());
47              TestCommons.auditVO(productUsurper.generateUsurper());
48          } catch (NullPropertyException e) {
49              fail();
50          }
51      }
52  }