package jp.agentec.sinaburocast.service;

import javax.annotation.Resource;

import jp.agentec.sinaburocast.common.util.SinaburoUtil;
import jp.agentec.sinaburocast.entity.Gift;
import jp.agentec.sinaburocast.entity.Member;
import jp.agentec.sinaburocast.entity.PointGet;
import junit.framework.TestSuite;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.seasar.dao.unit.S2DaoTestCase;

public class PointGetServiceTest  extends S2DaoTestCase {

	@Resource
	private PointGetService pointGetService;




	@Resource
	private MemberService memberService;

	public PointGetServiceTest(String string) {
		super(string);
	}

	public static TestSuite suite() {
		TestSuite suite = new TestSuite("PointGetServiceTest");
		suite.addTest(new PointGetServiceTest("insertPointGetTx"));
		suite.addTest(new PointGetServiceTest("findById"));
		suite.addTest(new PointGetServiceTest("findAllOrderById"));
		suite.addTest(new PointGetServiceTest("cutDownPointLogicTx"));
		suite.addTest(new PointGetServiceTest("findBymemberId"));
		suite.addTest(new PointGetServiceTest("findBymemberIdList"));
		suite.addTest(new PointGetServiceTest("findPointByMemberId"));
		suite.addTest(new PointGetServiceTest("findPointByMemberIdAdmin"));
		suite.addTest(new PointGetServiceTest("upDownPointLogicTx"));
		suite.addTest(new PointGetServiceTest("updatePointGetDateByPointPeriodTx"));
		suite.addTest(new PointGetServiceTest("cutExpiredPointBySqlTx"));
		return suite;
	}


	public void insertPointGetTx(){
		PointGet pointGet = new PointGet();
		//pointGet.pointGetId = null;
		pointGet.memberId = 1;
		pointGet.pointGetNum = 10;
		pointGet.pointUseNum = 0;
		pointGet.pointGetDate = SinaburoUtil.getToDayString();
		pointGet.validFlg = 1;
		//pointGet.member = null;


	    System.out.println(pointGetService.insertPointGet(pointGet, "TESTCLASS01"));
	}
	public void findById(){
	    System.out.println(pointGetService.findById(1));
	}
	public void findAllOrderById(){
	    System.out.println(pointGetService.findAllOrderById());
	}
	public void cutDownPointLogicTx(){



		Gift gift = new Gift();
		gift.giftId=1;
		gift.requiredPoint=200;

		Member member = memberService.findById(1);

	    pointGetService.cutDownPointLogic(gift, member);
	}
	public void findBymemberId(){
	    System.out.println(pointGetService.findBymemberId(10));
	}
	public void findBymemberIdList(){
	    System.out.println(pointGetService.findBymemberIdList(10));
	}
	public void findPointByMemberId(){
	    System.out.println(pointGetService.findPointByMemberId(10,"",""));
	}
	public void findPointByMemberIdAdmin(){
	    System.out.println(pointGetService.findPointByMemberIdAdmin(10));
	}

	public void upDownPointLogicTx(){

		Gift gift = new Gift();
		gift.giftId=1;
		gift.requiredPoint=200;

		Member member = memberService.findById(1);

	    pointGetService.upDownPointLogic(10, 10, "TEST");
	}
	public void updatePointGetDateByPointPeriodTx(){
	    System.out.println(pointGetService.updatePointGetDateByPointPeriod("3","10"));
	}

	public void cutExpiredPointBySqlTx(){
	    pointGetService.cutExpiredPointBySql("3");
	}

	/**
	 * @throws java.lang.Exception
	 */
	@BeforeClass
	public static void setUpBeforeClass() throws Exception {
	}

	/**
	 * @throws java.lang.Exception
	 */
	@AfterClass
	public static void tearDownAfterClass() throws Exception {
	}

	/**
	 * @throws java.lang.Exception
	 */
	@Before
	public void setUp() throws Exception {
        include("app.dicon");
	}

	/**
	 * @throws java.lang.Exception
	 */
	@After
	public void tearDown() throws Exception {
	}



}