[jboss-cvs] JBossAS SVN: r101177 - in projects/snowdrop/examples/trunk/sportsclub: sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate and 7 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Feb 19 11:22:59 EST 2010
Author: lvlcek at redhat.com
Date: 2010-02-19 11:22:58 -0500 (Fri, 19 Feb 2010)
New Revision: 101177
Added:
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePaymentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPaymentRepository.java
Modified:
projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateInvoiceRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernatePaymentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingService.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingServiceImpl.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/java/org/jboss/snowdrop/samples/sportsclub/springmvc/AccountController.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/WEB-INF/jsp/accountDetail.jsp
projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/index.jsp
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java
Log:
JBQA-3118
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -1,7 +1,11 @@
package org.jboss.snowdrop.samples.sportsclub.domain.repository;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import java.util.List;
+
public interface PaymentRepository extends Repository<Payment, Long>
{
+ List<Payment> findForAccount(Account account);
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateInvoiceRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateInvoiceRepository.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateInvoiceRepository.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -1,15 +1,12 @@
package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
-import java.util.List;
-
-import javax.swing.plaf.basic.BasicInternalFrameTitlePane;
-
+import org.hibernate.Criteria;
+import org.hibernate.criterion.Restrictions;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.InvoiceRepository;
-import org.hibernate.Criteria;
-import org.hibernate.criterion.Restrictions;
+import java.util.List;
public class HibernateInvoiceRepository extends HibernateRepository<Invoice, Long> implements InvoiceRepository
{
@@ -22,7 +19,7 @@
{
Criteria criteria = getCurrentSession().createCriteria(Invoice.class);
criteria.createCriteria("account").add(Restrictions.eq("id", account.getId()));
- return ((List<Invoice>) criteria.list());
+ return criteria.list();
}
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernatePaymentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernatePaymentRepository.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernatePaymentRepository.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -1,12 +1,24 @@
package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.PaymentRepository;
+import org.hibernate.Criteria;
+import org.hibernate.criterion.Restrictions;
+import java.util.List;
+
public class HibernatePaymentRepository extends HibernateRepository<Payment, Long> implements PaymentRepository
{
public HibernatePaymentRepository()
{
super(Payment.class);
}
+
+ public List<Payment> findForAccount(Account account)
+ {
+ Criteria criteria = getCurrentSession().createCriteria(Payment.class);
+ criteria.createCriteria("account").add(Restrictions.eq("id", account.getId()));
+ return criteria.list();
+ }
}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePaymentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePaymentRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePaymentRepository.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -0,0 +1,42 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.PaymentRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
+
+import java.util.List;
+
+import junit.framework.Assert;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-db-infrastructure.xml",
+ "classpath:test-hibernate-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+ at Transactional
+public class TestHibernatePaymentRepository
+{
+ @Autowired
+ AccountRepository accountRepository;
+
+ @Autowired
+ PaymentRepository paymentRepository;
+
+ @Test
+ public void testFindNoPaymentsForAccount()
+ {
+ Account a = accountRepository.findById(2L);
+ List<Payment> payments = paymentRepository.findForAccount(a);
+
+ Assert.assertEquals(0, payments.size());
+ }
+}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingService.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingService.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingService.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -1,15 +1,33 @@
package org.jboss.spring.samples.sportsclub.invoicing.services;
-import java.math.BigDecimal;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
import javax.ejb.Local;
+import java.util.List;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
-
@Local
public interface BillingService
{
+ /**
+ * Generate a new {@link Invoice} for given {@link Account}
+ * @param account
+ * @return
+ */
Invoice generateInvoice(Account account);
+ /**
+ * Get all {@link Invoice}s for given {@link Account}
+ * @param account
+ * @return
+ */
+ List<Invoice> getInvoices(Account account);
+
+ /**
+ * Get all {@link Payment}s for given {@link Account}
+ * @param account
+ * @return
+ */
+ List<Payment> getPayments(Account account);
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingServiceImpl.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingServiceImpl.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-ejb/src/main/java/org/jboss/spring/samples/sportsclub/invoicing/services/BillingServiceImpl.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -5,6 +5,7 @@
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Balance;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.InvoiceRepository;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.PaymentRepository;
@@ -13,6 +14,7 @@
import javax.ejb.Stateless;
import javax.interceptor.Interceptors;
import java.util.Date;
+import java.util.List;
@Stateless
@Interceptors(SpringLifecycleInterceptor.class)
@@ -58,5 +60,15 @@
return invoice;
}
-
+ public List<Invoice> getInvoices(Account account)
+ {
+ return invoiceRepository.findForAccount(account);
+ }
+
+ public List<Payment> getPayments(Account account)
+ {
+ return paymentRepository.findForAccount(account);
+ }
+
+
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/java/org/jboss/snowdrop/samples/sportsclub/springmvc/AccountController.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/java/org/jboss/snowdrop/samples/sportsclub/springmvc/AccountController.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/java/org/jboss/snowdrop/samples/sportsclub/springmvc/AccountController.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -1,21 +1,18 @@
package org.jboss.snowdrop.samples.sportsclub.springmvc;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
+import org.jboss.snowdrop.samples.sportsclub.ejb.SubscriptionService;
+import org.jboss.spring.samples.sportsclub.invoicing.services.BillingService;
import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.ui.ModelMap;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.jms.core.JmsTemplate;
-import org.jboss.snowdrop.samples.sportsclub.ejb.SubscriptionService;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.PaymentNotification;
-import org.jboss.spring.samples.sportsclub.invoicing.services.BillingService;
import javax.ejb.EJB;
import java.util.List;
-import java.math.BigDecimal;
/**
* @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
@@ -72,16 +69,19 @@
{
Account account = subscriptionService.findAccountById(Long.parseLong(id));
+ List<Invoice> invoices = billingService.getInvoices(account);
+ List<Payment> payments = billingService.getPayments(account);
+
ModelMap model = new ModelMap();
model.addAttribute(account);
+ model.addAttribute("invoices", invoices);
+ model.addAttribute("paymetns", payments);
return model;
}
@RequestMapping(value = "/generateInvoice.do", method = RequestMethod.POST)
ModelMap generateInvoice(@RequestParam("id") String id)
{
-
- // doublecheck that account does not have current invoice
Account account = subscriptionService.findAccountById(Long.parseLong(id));
Invoice invoice = billingService.generateInvoice(account);
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/WEB-INF/jsp/accountDetail.jsp
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/WEB-INF/jsp/accountDetail.jsp 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/WEB-INF/jsp/accountDetail.jsp 2010-02-19 16:22:58 UTC (rev 101177)
@@ -2,13 +2,18 @@
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
+<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
<html>
<head><title>Sports Club: Invoicing - account detail</title></head>
<body>
-<div>Account details</div>
+<p>
+ <a href='searchAccount.do'>Go back to search form.</a>
+</p>
+<h3>Account details</h3>
+
<table>
<tr>
<td></td>
@@ -76,11 +81,67 @@
</c:if>
</table>
-<form:form action="generateInvoice.do">
- You can create new invoice for this account:
- <input type="hidden" name="id" value="<c:out value="${account.id}"/>">
- <input type="submit" value="Create invoice"/><br/>
-</form:form>
+<p>
+ <form:form action="generateInvoice.do">
+ You can create new invoice for this account:
+ <input type="hidden" name="id" value="<c:out value="${account.id}"/>">
+ <input type="submit" value="Create invoice"/><br/>
+ </form:form>
+</p>
+<table cellspacing="10">
+ <tr>
+ <td>
+ <table border="1">
+ <thead>
+ <tr>
+ <th colspan="5">Invoices</th>
+ </tr>
+ <tr>
+ <th rowspan="2">Id</th>
+ <th rowspan="2">IssueDate</th>
+ <th rowspan="2">Amount</th>
+ <th colspan="2">BillingPeriod</th>
+ </tr>
+ <tr>
+ <th>Start</th>
+ <th>End</th>
+ </tr>
+ </thead>
+ <c:forEach items="${invoices}" var="invoice">
+ <tr>
+ <td><c:out value="${invoice.id}"/></td>
+ <td><c:out value="${invoice.issueDate}"/></td>
+ <td><c:out value="${invoice.amount}"/></td>
+ <td><fmt:formatDate value="${invoice.billingPeriod.startDate}" dateStyle="short" timeStyle="short" type="both"/></td>
+ <td><fmt:formatDate value="${invoice.billingPeriod.endDate}" dateStyle="short" timeStyle="short" type="both"/></td>
+ </tr>
+ </c:forEach>
+ </table>
+ </td>
+ <td>
+ <table border="1">
+ <thead>
+ <tr>
+ <th colspan="3">Payments</th>
+ </tr>
+ <tr>
+ <th>Id</th>
+ <th>Amount</th>
+ <th>Date</th>
+ </tr>
+ </thead>
+ <c:forEach items="${payments}" var="payment">
+ <tr>
+ <td><c:out value="${payment.id}"/></td>
+ <td><c:out value="${payment.amount}"/></td>
+ <td><fmt:formatDate value="${payment.date}" dateStyle="short" timeStyle="short" type="both"/></td>
+ </tr>
+ </c:forEach>
+ </table>
+ </td>
+ </tr>
+</table>
+
</body>
</html>
\ No newline at end of file
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/index.jsp
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/index.jsp 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-invoicing-webmvc/src/main/webapp/index.jsp 2010-02-19 16:22:58 UTC (rev 101177)
@@ -1,5 +1,11 @@
<html>
+<head><title>Sports Club: Invoicing</title></head>
<body>
-<h2>Deployed again</h2>
+<p>
+ Search for account, view detail and create invoice if needed.
+</p>
+<p>
+ <a href="searchAccount.do">Go to search page.</a>
+</p>
</body>
</html>
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -3,13 +3,9 @@
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.InvoiceRepository;
-import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.InvoiceSearchCriteria;
-
import org.springframework.stereotype.Repository;
import javax.persistence.Query;
-import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
/**
@@ -26,8 +22,8 @@
public List<Invoice> findForAccount(Account account)
{
- Query q = entityManager.createQuery("FROM " + Invoice.class.getSimpleName() + " i WHERE i.account.id = :id");
- q.setParameter("id", account.getId());
- return q.getResultList();
+ Query query = entityManager.createQuery("FROM " + Invoice.class.getSimpleName() + " i WHERE i.account.id = :id");
+ query.setParameter("id", account.getId());
+ return query.getResultList();
}
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java 2010-02-19 16:11:41 UTC (rev 101176)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -1,9 +1,13 @@
package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.PaymentRepository;
import org.springframework.stereotype.Repository;
+import javax.persistence.Query;
+import java.util.List;
+
/**
* @author Marius Bogoevici
*/
@@ -14,4 +18,11 @@
{
super(Payment.class);
}
+
+ public List<Payment> findForAccount(Account account)
+ {
+ Query query = entityManager.createQuery("FROM " + Payment.class.getSimpleName() + " p WHERE p.account.id = :id");
+ query.setParameter("id", account.getId());
+ return query.getResultList();
+ }
}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPaymentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPaymentRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPaymentRepository.java 2010-02-19 16:22:58 UTC (rev 101177)
@@ -0,0 +1,40 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.PaymentRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Payment;
+
+import java.util.List;
+
+import junit.framework.Assert;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-db-infrastructure.xml",
+ "classpath:TEST-jpa-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+public class TestJpaPaymentRepository
+{
+ @Autowired
+ AccountRepository accountRepository;
+
+ @Autowired
+ PaymentRepository paymentRepository;
+
+ @Test
+ public void testFindNoPaymentsForAccount()
+ {
+ Account a = accountRepository.findById(2L);
+ List<Payment> payments = paymentRepository.findForAccount(a);
+
+ Assert.assertEquals(0, payments.size());
+ }
+}
More information about the jboss-cvs-commits
mailing list