📄 itemtest.java
字号:
package org.hibernate.auction.test;import junit.framework.*;import junit.textui.TestRunner;import org.hibernate.auction.dao.*;import org.hibernate.auction.exceptions.*;import org.hibernate.auction.model.*;import org.hibernate.auction.persistence.HibernateUtil;import java.math.BigDecimal;import java.util.*;public class ItemTest extends TestCaseWithData { // ********************************************************** // public void testItemData() throws Exception { initData(); ItemDAO itemDAO = new ItemDAO(); Item a1 = itemDAO.getItemById(auctionOne.getId(), false); assertEquals(a1.getInitialPrice(), new MonetaryAmount(new BigDecimal("1.99"), Currency.getInstance(Locale.US))); HibernateUtil.commitTransaction(); HibernateUtil.closeSession(); } // ********************************************************** // public void testPlaceBid() throws Exception { initData(); // TODO: Test doesn't consider currency properly! ItemDAO itemDAO = new ItemDAO(); UserDAO userDAO = new HibernateUserDAO(); Bid currentMaxBid = itemDAO.getMaxBid(auctionTwo.getId()); Bid currentMinBid = itemDAO.getMinBid(auctionTwo.getId()); Item a2 = itemDAO.getItemById(auctionTwo.getId(), true); // Fail, auction is not active yet try { BigDecimal bidAmount = new BigDecimal("99.99"); MonetaryAmount newAmount = new MonetaryAmount(bidAmount, Currency.getInstance("USD")); a2.placeBid(userDAO.getUserById(u3.getId(), false), newAmount, currentMaxBid, currentMinBid); } catch (BusinessException success) {} // Fail, user isn't an admin try { a2.approve(u3); } catch (PermissionException success) {} // Success, set active a2.setPendingForApproval(); a2.approve(u1); // Success, place a bid try { BigDecimal bidAmount = new BigDecimal("100.00"); MonetaryAmount newAmount = new MonetaryAmount(bidAmount, Currency.getInstance("USD")); a2.placeBid(userDAO.getUserById(u3.getId(), false), newAmount, currentMaxBid, currentMinBid); } catch (BusinessException failure) { throw failure; } // Fail, bid amount is too low try { BigDecimal bidAmount = new BigDecimal("99.99"); MonetaryAmount newAmount = new MonetaryAmount(bidAmount, Currency.getInstance("USD")); a2.placeBid(userDAO.getUserById(u3.getId(), false), newAmount, currentMaxBid, currentMinBid); } catch (BusinessException success) {} // TODO: Implement test for auction dates... HibernateUtil.commitTransaction(); HibernateUtil.closeSession(); } // ********************************************************** // public ItemTest(String x) { super(x); } public static Test suite() { return new TestSuite(ItemTest.class); } public static void main(String[] args) throws Exception { TestRunner.run( suite() ); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -