package jp.agentec.sinaburocast.service;

import java.util.ArrayList;
import java.util.List;

import javax.annotation.Resource;

import jp.agentec.sinaburocast.csv.DeliveryGroupInfoCsv;
import jp.agentec.sinaburocast.dto.MemberDetailDto;
import jp.agentec.sinaburocast.entity.DeliveryGroup;
import jp.agentec.sinaburocast.entity.DeliveryGroupMember;
import jp.agentec.sinaburocast.form.admin.member.DeliveryGroupSearchForm;
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 DeliveryGroupServiceTest extends S2DaoTestCase {

	@Resource
	private DeliveryGroupService deliveryGroupService;

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

	public static TestSuite suite() {
		TestSuite suite = new TestSuite("DeliveryGroupServiceTest");
		suite.addTest(new DeliveryGroupServiceTest("findById"));
		suite.addTest(new DeliveryGroupServiceTest("findAllOrderById"));
		suite.addTest(new DeliveryGroupServiceTest("findAllOrderById1"));
		suite.addTest(new DeliveryGroupServiceTest("insertDeliveryGroup"));
		suite.addTest(new DeliveryGroupServiceTest("insertDeliveryGroupUpload"));
		suite.addTest(new DeliveryGroupServiceTest("insertDeliveryGroupRe"));
		suite.addTest(new DeliveryGroupServiceTest("findByMemberGroupList"));
		suite.addTest(new DeliveryGroupServiceTest("deliteDeliveryGroup"));
		return suite;
	}


	/**
	 * @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 {
	}

	public void findById() {
		System.out.println(deliveryGroupService.findById(1));
	}
	public void findAllOrderById() {
		System.out.println(deliveryGroupService.findAllOrderById());
	}
	public void findAllOrderById1() {
		System.out.println(deliveryGroupService.findAllOrderById(2));
	}
	public void insertDeliveryGroup() {
		DeliveryGroup deliveryGroup = new DeliveryGroup();
		deliveryGroup.deliveryGroupName = "TESTS";
		List<MemberDetailDto> list = new ArrayList<MemberDetailDto>();
		System.out.println(deliveryGroupService.insertDeliveryGroup(deliveryGroup,list, "TESTCLASS01"));
	}
	public void insertDeliveryGroupUpload() {
		DeliveryGroup deliveryGroup = new DeliveryGroup();
		deliveryGroup.deliveryGroupName = "TESTS";
		List<DeliveryGroupInfoCsv> list = new ArrayList<DeliveryGroupInfoCsv>();
		System.out.println(deliveryGroupService.insertDeliveryGroupUpload(deliveryGroup,list, "TESTCLASS01"));
	}
	public void insertDeliveryGroupRe() {
		DeliveryGroup deliveryGroup = new DeliveryGroup();
		deliveryGroup.deliveryGroupName = "TESTS";
		List<DeliveryGroupMember> list = new ArrayList<DeliveryGroupMember>();
		System.out.println(deliveryGroupService.insertDeliveryGroupRe(deliveryGroup,list, "TESTCLASS01"));
	}

	public void findByMemberGroupList() {
		DeliveryGroupSearchForm deliveryGroupSearchForm = new DeliveryGroupSearchForm();

		System.out.println(deliveryGroupService.findByMemberGroupList(null,1,deliveryGroupSearchForm,false));
	}

	public void deliteDeliveryGroup() {
		System.out.println(deliveryGroupService.deliteDeliveryGroup("7","TESTCLASS01"));
	}
}