Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/hibernate/test/idclass/IdClassTest.java


1   //$Id: IdClassTest.java 7858 2005-08-11 21:46:58Z epbernard $
2   package org.hibernate.test.idclass;
3   
4   import junit.framework.Test;
5   import junit.framework.TestSuite;
6   
7   import org.hibernate.Session;
8   import org.hibernate.Transaction;
9   import org.hibernate.test.TestCase;
10  import org.hibernate.type.Type;
11  
12  /**
13   * @author Gavin King
14   */
15  public class IdClassTest extends TestCase {
16    
17    public IdClassTest(String str) {
18      super(str);
19    }
20  
21    public void testIdClass() {
22      Type type = getSessions().getClassMetadata(Customer.class).getIdentifierType();
23      Type[] types = getSessions().getClassMetadata(Customer.class).getPropertyTypes();
24      Session s = openSession();
25      Transaction t = s.beginTransaction();
26      Customer cust = new FavoriteCustomer("JBoss", "RouteOne", "Detroit");
27      s.persist(cust);
28      t.commit();
29      s.close();
30      
31      s = openSession();
32      CustomerId custId = new CustomerId("JBoss", "RouteOne");
33      t = s.beginTransaction();
34      cust = (Customer) s.get(Customer.class, custId);
35      assertEquals( "Detroit", cust.getAddress() );
36      assertEquals( cust.getCustomerName(), custId.getCustomerName() );
37      assertEquals( cust.getOrgName(), custId.getOrgName() );
38      t.commit();
39      s.close();    
40  
41      s = openSession();
42      t = s.beginTransaction();
43      cust = (Customer) s.createQuery("from Customer where id.customerName = 'RouteOne'").uniqueResult();
44      assertEquals( "Detroit", cust.getAddress() );
45      assertEquals( cust.getCustomerName(), custId.getCustomerName() );
46      assertEquals( cust.getOrgName(), custId.getOrgName() );
47      t.commit();
48      s.close();
49  
50      s = openSession();
51      t = s.beginTransaction();
52      cust = (Customer) s.createQuery("from Customer where customerName = 'RouteOne'").uniqueResult();
53      assertEquals( "Detroit", cust.getAddress() );
54      assertEquals( cust.getCustomerName(), custId.getCustomerName() );
55      assertEquals( cust.getOrgName(), custId.getOrgName() );
56      t.commit();
57      s.close();
58    }
59    
60    protected String[] getMappings() {
61      return new String[] { "idclass/Customer.hbm.xml" };
62    }
63  
64    public static Test suite() {
65      return new TestSuite(IdClassTest.class);
66    }
67  
68  }
69