package org.xmx0632.deliciousfruit.repository;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import java.util.List;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springside.modules.test.spring.SpringTransactionalTestCase;
import org.xmx0632.deliciousfruit.entity.FruitPromotion;
import org.xmx0632.deliciousfruit.utilities.date.DateUtil;
@ContextConfiguration(locations = { "/applicationContext.xml" })
public class FruitPromotionDaoTest extends SpringTransactionalTestCase {
@Autowired
private FruitPromotionDao fruitPromotionDao;
@Test
public void testGetAvailablePromotionBy1() {
long start = System.currentTimeMillis();
for (int i = 0; i < 3; i++) {
List<FruitPromotion> list = fruitPromotionDao
.getAvailablePromotionBy(new DateUtil()
.getCurrentDate("yyyy-MM-dd HH"),
FruitPromotion.PromotionType.TOTAL_DEDUCT
.getValue(), Long.valueOf(1));
assertNotNull(list);
}
long elapse = System.currentTimeMillis() - start;
System.out.println("elapse:" + elapse);
}
@Test
public void testFindOneWithCacheNoData() {
long s = System.currentTimeMillis();
for (int i = 0; i < 3; i++) {
FruitPromotion fp = fruitPromotionDao.findOne(Long.valueOf(-1));
assertNull(fp);
}
System.out.println(System.currentTimeMillis() - s);
}
@Test
public void testFindOneWithCacheExistData() {
long s = System.currentTimeMillis();
for (int i = 0; i < 3; i++) {
FruitPromotion fp = fruitPromotionDao.findOne(Long.valueOf(1));
assertNotNull(fp);
}
System.out.println(System.currentTimeMillis() - s);
}
}