database.close();
}
public void testCreateAndLoadComputer() throws Exception {
Database database = _category.getDatabase();
database.begin();
Order order = new Order();
order.setId(12);
order.setName("order 12");
database.create(order);
database.commit();
database.begin();
ProductDetail detail = new ProductDetail();
detail.setId(12);
detail.setCategory("category 12");
detail.setLocation("location 12");
database.create(detail);
database.commit();
database.begin();
Laptop laptop = new Laptop();
laptop.setId(12);
laptop.setName("laptop 12");
laptop.setCpu("centrino");
laptop.setResolution("1600");
laptop.setWeight(2450);
laptop.setDetail((ProductDetail)
database.load(ProductDetail.class, new Integer(12)));
database.create(laptop);
Collection orders = new LinkedList();
orders.add(database.load(Order.class, new Integer(12)));
laptop.setOrders(orders);
database.commit();
database.begin();
Computer computer = (Computer) database.load(Computer.class, new Integer(12));
database.commit();
assertNotNull(computer);
assertEquals("ctf.jdo.tc9x.Laptop", computer.getClass().getName());
assertEquals(12, computer.getId());
assertEquals("laptop 12", computer.getName());
database.begin();
computer = (Computer) database.load(Computer.class, new Integer(12));
database.remove(computer);
database.remove(database.load (ProductDetail.class, new Integer(12)));
database.remove(database.load(Order.class, new Integer(12)));
database.commit();
database.close();
}