// Merge Test:Have a class(TelephoneNumber) that uses a composite primary key (defined in // annotations) and define a 1-M (BeerConsumer->TelephoneNumber) for it in XML // Setup Relationship public void testOneToManyRelationships() { EntityManager em = createEntityManager(); try { beginTransaction(em); BeerConsumer consumer = new BeerConsumer(); consumer.setName("Joe Black"); TelephoneNumber homeNumber = new TelephoneNumber(); homeNumber.setAreaCode("555"); homeNumber.setType("Home"); homeNumber.setNumber("123-1234"); TelephoneNumber workNumber = new TelephoneNumber(); workNumber.setAreaCode("555"); workNumber.setType("Work"); workNumber.setNumber("987-9876"); consumer.addTelephoneNumber(homeNumber); consumer.addTelephoneNumber(workNumber); em.persist(consumer); beerConsumerId = consumer.getId(); commitTransaction(em); } catch (RuntimeException e) { if (isTransactionActive(em)) { rollbackTransaction(em); } throw e; } }
public void testCoronaBeerConsumer() { EntityManager em = createEntityManager(); beginTransaction(em); BeerConsumer initialBC = new BeerConsumer(); int beerConsumerId = 0; try { Corona corona1 = new Corona(); corona1.setAlcoholContent(5.3); CoronaTag coronaTag1 = new CoronaTag(); coronaTag1.setCode("0A"); coronaTag1.setNumber(789); Corona corona2 = new Corona(); corona2.setAlcoholContent(5.3); CoronaTag coronaTag2 = new CoronaTag(); coronaTag2.setCode("BX"); coronaTag2.setNumber(521); Corona corona3 = new Corona(); corona3.setAlcoholContent(5.3); CoronaTag coronaTag3 = new CoronaTag(); coronaTag3.setCode("UY"); coronaTag3.setNumber(429); initialBC.setName("Corona Consumer"); initialBC.addCoronaBeerToConsume(corona1, coronaTag1); initialBC.addCoronaBeerToConsume(corona2, coronaTag2); initialBC.addCoronaBeerToConsume(corona3, coronaTag3); em.persist(initialBC); beerConsumerId = initialBC.getId(); commitTransaction(em); } catch (RuntimeException e) { if (isTransactionActive(em)) { rollbackTransaction(em); } closeEntityManager(em); fail("An exception was caught during create operation: [" + e.getMessage() + "]"); } closeEntityManager(em); clearCache(); em = createEntityManager(); BeerConsumer refreshedBC = em.find(BeerConsumer.class, beerConsumerId); assertTrue( "The beer consumer read back did not match the original", getServerSession().compareObjects(initialBC, refreshedBC)); }
public void testBecksBeerConsumer() { EntityManager em = createEntityManager(); beginTransaction(em); BeerConsumer initialBC = new BeerConsumer(); int beerConsumerId = 0; try { Becks becks1 = new Becks(); becks1.setAlcoholContent(5.1); BecksTag becksTag1 = new BecksTag(); becksTag1.setCallNumber("0A.789"); em.persist(becksTag1); Becks becks2 = new Becks(); becks2.setAlcoholContent(5.1); BecksTag becksTag2 = new BecksTag(); becksTag2.setCallNumber("BX.521"); em.persist(becksTag2); Becks becks3 = new Becks(); becks3.setAlcoholContent(5.1); BecksTag becksTag3 = new BecksTag(); becksTag3.setCallNumber("UY.429"); em.persist(becksTag3); initialBC.setName("Becks Consumer"); initialBC.addBecksBeerToConsume(becks1, becksTag1); initialBC.addBecksBeerToConsume(becks2, becksTag2); initialBC.addBecksBeerToConsume(becks3, becksTag3); em.persist(initialBC); beerConsumerId = initialBC.getId(); commitTransaction(em); } catch (RuntimeException e) { if (isTransactionActive(em)) { rollbackTransaction(em); } closeEntityManager(em); fail("An exception was caught during create operation: [" + e.getMessage() + "]"); } closeEntityManager(em); clearCache(); em = createEntityManager(); BeerConsumer refreshedBC = em.find(BeerConsumer.class, beerConsumerId); assertTrue( "The beer consumer read back did not match the original", getServerSession().compareObjects(initialBC, refreshedBC)); }
public void testUpdateBeerConsumer() { EntityManager em = createEntityManager(); beginTransaction(em); try { BeerConsumer beerConsumer = em.find(BeerConsumer.class, beerConsumerId); beerConsumer.setName("Joe White"); commitTransaction(em); } catch (RuntimeException ex) { if (isTransactionActive(em)) { rollbackTransaction(em); } throw ex; } clearCache(); BeerConsumer newBeerConsumer = em.find(BeerConsumer.class, beerConsumerId); closeEntityManager(em); assertTrue("Error updating BeerConsumer name", newBeerConsumer.getName().equals("Joe White")); }
// Verify Relationship public void testVerifyOneToManyRelationships() { EntityManager em = createEntityManager(); try { beginTransaction(em); BeerConsumer cm = em.find(BeerConsumer.class, beerConsumerId); java.util.Collection phones = cm.getTelephoneNumbers().values(); assertTrue("Wrong phonenumbers associated with BeerConsumer", phones.size() == 2); for (Iterator iterator = phones.iterator(); iterator.hasNext(); ) { TelephoneNumber phone = (TelephoneNumber) (iterator.next()); assertTrue( "Wrong owner of the telephone", phone.getBeerConsumer().getId() == beerConsumerId); } commitTransaction(em); } catch (RuntimeException e) { if (isTransactionActive(em)) { rollbackTransaction(em); } throw e; } }
public void testHeinekenBeerConsumer() { EntityManager em = createEntityManager(); beginTransaction(em); BeerConsumer initialBC = new BeerConsumer(); int beerConsumerId = 0; try { Heineken heineken1 = new Heineken(); heineken1.setAlcoholContent(5.0); Heineken heineken2 = new Heineken(); heineken2.setAlcoholContent(5.0); Heineken heineken3 = new Heineken(); heineken3.setAlcoholContent(5.0); initialBC.setName("Heineken Consumer"); Calendar cal = Calendar.getInstance(); cal.set(2008, 12, 12); initialBC.addHeinekenBeerToConsume(heineken1, cal.getTime()); cal.set(2009, 1, 1); initialBC.addHeinekenBeerToConsume(heineken2, cal.getTime()); cal.set(2009, 2, 2); initialBC.addHeinekenBeerToConsume(heineken3, cal.getTime()); em.persist(initialBC); beerConsumerId = initialBC.getId(); commitTransaction(em); } catch (RuntimeException e) { if (isTransactionActive(em)) { rollbackTransaction(em); } closeEntityManager(em); fail("An exception was caught during create operation: [" + e.getMessage() + "]"); } closeEntityManager(em); clearCache(); em = createEntityManager(); BeerConsumer refreshedBC = em.find(BeerConsumer.class, beerConsumerId); assertTrue( "The beer consumer read back did not match the original", getServerSession().compareObjects(initialBC, refreshedBC)); }
public void testReadBeerConsumer() { BeerConsumer consumer = createEntityManager().find(BeerConsumer.class, beerConsumerId); assertTrue("Error reading BeerConsumer", consumer.getId() == beerConsumerId); }
public void testCreateBeerConsumer() { EntityManager em = createEntityManager(); try { beginTransaction(em); BeerConsumer consumer = new BeerConsumer(); consumer.setName("Joe Black"); em.persist(consumer); beerConsumerId = consumer.getId(); Alpine alpine1 = new Alpine(); alpine1.setAlcoholContent(5.0); alpine1.setBeerConsumer(consumer); alpine1.setBestBeforeDate(new Date(System.currentTimeMillis() + 10000000)); em.persist(alpine1); Canadian canadian1 = new Canadian(); canadian1.setAlcoholContent(5.5); canadian1.setBeerConsumer(consumer); canadian1.setBornOnDate(new Date(System.currentTimeMillis() - 30000000)); em.persist(canadian1); Canadian canadian2 = new Canadian(); canadian2.setAlcoholContent(5.0); canadian2.setBeerConsumer(consumer); canadian2.setBornOnDate(new Date(System.currentTimeMillis() - 23000000)); em.persist(canadian2); /* TelephoneNumber homeNumber = new TelephoneNumber(); homeNumber.setAreaCode("555"); homeNumber.setType("Home"); homeNumber.setNumber("123-1234"); getEntityManager().persist(homeNumber); TelephoneNumber workNumber = new TelephoneNumber(); workNumber.setAreaCode("555"); workNumber.setType("Work"); workNumber.setNumber("987-9876"); getEntityManager().persist(workNumber); */ Certification cert1 = new Certification(); cert1.setDescription("Value brand beer consumption certified"); cert1.setBeerConsumer(consumer); em.persist(cert1); Certification cert2 = new Certification(); cert2.setDescription("Premium brand beer consumption certified"); cert2.setBeerConsumer(consumer); em.persist(cert2); em.persist(consumer); commitTransaction(em); } catch (RuntimeException e) { if (isTransactionActive(em)) { rollbackTransaction(em); } throw e; } }