@isTest
private class ConsumReassignControllerTest {

    @isTest(SeeAllData=true) static void test_init() {
            RecordType rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Hp'];
            List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName IN ('Department_GI', 'Department_BF') order by DeveloperName desc];

            Account acc = new Account();
            acc.RecordTypeId = rectCo.Id;
            acc.Name = 'HP test1';
            insert acc;

            List<Account> dept = [select Id, Name from Account where ParentId = :acc.Id and Department_Class_Label__c IN ('消化科', '呼吸科') order by Department_Class_Label__c];

            Account depart1 = new Account();
            depart1.RecordTypeId = rectDpt[0].Id;
            depart1.Name         = '*';
            depart1.Department_Name__c  = 'Gastoro Intestin Test';
            depart1.ParentId            = dept[0].Id;
            depart1.Department_Class__c = dept[0].Id;
            depart1.Hospital__c         = acc.Id;

            Account depart2 = new Account();
            depart2.RecordTypeId = rectDpt[1].Id;
            depart2.Name         = '*';
            depart2.Department_Name__c  = '診療科2';
            depart2.ParentId            = dept[1].Id;
            depart2.Department_Class__c = dept[1].Id;
            depart2.Hospital__c         = acc.Id;
            insert new Account[] {depart1, depart2};

            Contact con = new Contact();
            con.LastName = 'lastname2';
            con.FirstName = 'firstname2';
            con.Email = 'olympustest033@sunbridge.com';
            con.MobilePhone = '99999999';
            con.Work_Location_manual__c = 'location2';
            con.Post_picklist__c = '部长';
            con.Job_Category_picklist__c = '销售推广';
            con.Hire_date_text__c = Date.today().addMonths(-6);
            con.Gender_text__c = '男';
            con.dept__c = '服务本部';
            con.Pregnant_Rest__c = true;
            insert con;
            Consum_Apply__c ca = new Consum_Apply__c();
            ca.DataMigration_Flag__c = true;
            insert ca;
            Consum_Apply_Equipment_Set__c caes = new Consum_Apply_Equipment_Set__c();
            caes.Consum_Apply__c = ca.Id;
            caes.Consum_Start_Date__c = Date.today().addDays(20);
            caes.DataMigration_Flag__c = true;
            insert caes;
            Consum_Apply_Equipment_Set_Detail__c caesd = new Consum_Apply_Equipment_Set_Detail__c();
            caesd.DataMigration_Flag__c = true;
            caesd.Consum_Apply__c = ca.Id;
            caesd.Consum_Apply_Equipment_Set__c = caes.Id;
            caesd.Consum_Start_Date__c = caes.Consum_Start_Date__c;
            caesd.Trial_User__c = '我';
            caesd.Follower_User__c = UserInfo.getUserId();
            caesd.Received_Confirm__c = 'NG';
            caesd.Asset_Center_Confirm__c = 'OK';
            caesd.Cancel_Select__c = false;
            insert caesd; // 草案中
            PageReference page = new PageReference('/apex/ConsumReassign?caid=' + ca.id);
            System.Test.setCurrentPage(page);
            ConsumReassignController consumReassignPage = new ConsumReassignController();
            consumReassignPage.init();
            System.debug(consumReassignPage);
            for (ConsumReassignController.LineInfo lineInfo : consumReassignPage.lineInfoList) {
                lineInfo.isSelect = true;
            }
            System.debug(consumReassignPage);
            consumReassignPage.saveBtn();
    } 
}