@isTest
|
private class InstructReportControllerTest {
|
@TestSetup
|
static void makeData(){
|
TestDataUtility.CreatePIPolicyConfiguration('Contact');
|
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;
|
|
RecordType rectCam =
|
[select Id from RecordType
|
where IsActive = true and SobjectType = 'Campaign'
|
and DeveloperName = 'ServiceEngineerTraining'];
|
|
Campaign cam = new Campaign();
|
cam.Name = 'cam';
|
cam.Name2__c = '1234';
|
cam.RecordTypeId = rectCam.Id;
|
cam.StartDate = Date.today().addDays(-15);
|
cam.EndDate = Date.today().addDays(18);
|
cam.Mailflg_after45__c = true;
|
cam.Mailflg_cancel__c = true;
|
cam.Mailflg_before15__c = true;
|
cam.Mailflg_before7__c = true;
|
cam.Mailflg_after3__c = true;
|
insert cam;
|
CampaignMember__c tempCM = new CampaignMember__c(Contact_ID__c = con.id, Campaign__c = cam.id);
|
insert tempCM;
|
|
Instruct_report__c temIR = new Instruct_report__c();
|
temIR.Campaign__c = cam.id;
|
temIR.Status__c = '草案中';
|
temIR.ServiceDesignDep__c = UserInfo.getUserId();
|
temIR.Name = cam.Name + '第' + 1 + '次报告';
|
//temAR.Type__c = '授课';
|
insert temIR;
|
Instructed_staff__c tempARS = new Instructed_staff__c ();
|
tempARS.CampaignMember__c = tempCM.id;
|
tempARS.ContactID__c = con.id;
|
tempARS.Instruct_report__c = temIR.id;
|
tempARS.Department__c = depart2.id ;
|
insert tempARS;
|
}
|
|
|
@isTest static void test_init() {
|
// Implement test code
|
|
list<Campaign> camlist = [select id from Campaign];
|
Campaign cam = camlist[0];
|
PageReference page = new PageReference('/apex/InstructReport?camid=' + cam.Id);
|
System.Test.setCurrentPage(page);
|
InstructReportController cmc = new InstructReportController();
|
cmc.init();
|
Instruct_report__c temIR = [select id from Instruct_report__c];
|
page = new PageReference('/apex/InstructReport?id=' + temIR.Id);
|
System.Test.setCurrentPage(page);
|
cmc = new InstructReportController();
|
cmc.init();
|
}
|
|
@isTest static void test_CheckSaveInput() {
|
Instruct_report__c temIR = [select id from Instruct_report__c];
|
PageReference page = new PageReference('/apex/InstructReport?id=' + temIR.Id);
|
System.Test.setCurrentPage(page);
|
InstructReportController cmc = new InstructReportController();
|
cmc.init();
|
cmc.CheckSaveInput();
|
for (InstructReportController.InstructedstaffInfo temIS : cmc.checkedISList) {
|
temIS.IS.Instruct_time__c = null;
|
temIS.IS.Instruct_content__c = null;
|
}
|
cmc.CheckSaveInput();
|
}
|
|
@isTest static void test_Save_Submit() {
|
Instruct_report__c temIR = [select id from Instruct_report__c];
|
PageReference page = new PageReference('/apex/InstructReport?id=' + temIR.Id);
|
System.Test.setCurrentPage(page);
|
InstructReportController cmc = new InstructReportController();
|
cmc.init();
|
cmc.save();
|
cmc.saveAndCancel();
|
cmc.Submit();
|
|
cmc.Instruct_report.Instruct_Staff__c = UserInfo.getUserId();
|
cmc.Instruct_report.Verifier__c = '护士长';
|
cmc.Instruct_report.VerifierName__c = '护士长';
|
cmc.Instruct_report.VerifierNumber__c = '护士长';
|
for (InstructReportController.InstructedstaffInfo temIS : cmc.checkedISList) {
|
temIS.IS.Instruct_Date__c = Date.today();
|
temIS.IS.Instructed_staff_feedback__c = 'test word';
|
temIS.IS.Instruct_staff_feedback__c = 'test word';
|
temIS.IS.Instruct_Date__c = Date.today();
|
temIS.IS.Instructed_staff_feedback__c = 'test word';
|
temIS.IS.Instruct_staff_feedback__c = 'test word';
|
temIS.IS.Instruct_time__c ='1-2';
|
temIS.IS.Instruct_content__c='使用操作';
|
temIS.IS.Instruct_place__c = '消化科/内镜中心';
|
temIS.IS.Instruct_content_other__c = '测试';
|
temIS.IS.Verifier__c = '护士长';
|
temIS.IS.VerifierName__c = '精琢技术';
|
|
}
|
cmc.save();
|
cmc.saveAndCancel();
|
cmc.Submit();
|
|
|
}
|
@isTest static void test_exchangeInstructedstaff() {
|
Instruct_report__c temIR = [select id from Instruct_report__c];
|
PageReference page = new PageReference('/apex/InstructReport?id=' + temIR.Id);
|
System.Test.setCurrentPage(page);
|
InstructReportController cmc = new InstructReportController();
|
cmc.init();
|
for (InstructReportController.InstructedstaffInfo checkedIS : cmc.checkedISList) {
|
checkedIS.rec_checkBox = false;
|
}
|
cmc.exchangeInstructedstaff();
|
for (InstructReportController.InstructedstaffInfo uncheckedIS : cmc.uncheckedISList) {
|
uncheckedIS.rec_checkBox = true;
|
}
|
cmc.exchangeInstructedstaff();
|
|
}
|
|
@isTest static void test_unitTest() {
|
Instruct_report__c temIR = [select id from Instruct_report__c];
|
PageReference page = new PageReference('/apex/InstructReport?id=' + temIR.Id);
|
System.Test.setCurrentPage(page);
|
InstructReportController cmc = new InstructReportController();
|
cmc.init();
|
cmc.EditRecord();
|
cmc.getInputdisabled();
|
cmc.cancel();
|
|
Integer i = cmc.CheckedCnt;
|
Integer j = cmc.unCheckedCnt;
|
Boolean tf = cmc.getIsServiceDesignDep();
|
}
|
}
|