@isTest
|
private class OnCallControllerTest {
|
@TestSetup
|
static void makeData(){
|
TestDataUtility.CreatePIPolicyConfiguration('On_Call__c');
|
|
Account hospital = new Account();
|
hospital.recordtypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId();
|
hospital.Name = 'test hospital';
|
insert hospital;
|
List<Account> strategicDep = [SELECT ID, Name FROM Account WHERE parentId = :hospital.Id AND recordType.DeveloperName = 'Department_Class_GI'];
|
Account dep = new Account();
|
dep.recordtypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Department_GI').getRecordTypeId();
|
dep.Name = 'test dep';
|
dep.ParentId = strategicDep[0].Id;
|
dep.Department_Class__c = strategicDep[0].Id;
|
dep.Hospital__c = hospital.Id;
|
insert dep;
|
On_Call__c onCall = new On_Call__c();
|
onCall.segment__c = dep.Id;
|
onCall.Hospital__c = hospital.Id;
|
onCall.AWS_Data_Id__c = '1234567890';
|
insert onCall;
|
}
|
static testMethod void testMethod1() {
|
On_Call__c onCall = [SELECT Id FROM On_Call__c LIMIT 1];
|
Map<String,Object> smap = new Map<String,Object>();
|
smap.put('object',onCall);
|
String bodyJson = JSON.serialize(smap);
|
|
Test.setMock(HttpCalloutMock.class, new TestDataUtility.BaseHttpMock(bodyJson,'OK','200'));
|
Test.startTest();
|
ApexPages.StandardController sc = new ApexPages.StandardController(onCall);
|
OnCallController occ = new OnCallController(sc);
|
Test.stopTest();
|
}
|
static testMethod void testMethod2() {
|
Account acc = TestDataUtility.CreateAccounts(1)[0];
|
Account pacc = [SELECT Id,Name,ParentId FROM Account WHERE Id =: acc.ParentId];
|
Test.startTest();
|
String onCallJson = '{"Status_c__c":"跟进中","segment__c":"'+acc.Id+'","OwnerId":"0050l000005fcnt","Responsible_Person_HP__c":"Test","Oncall_report_number_c__c":"Test","Caller_phone__c":"186435431212","Hospital__c":"'+pacc.ParentId+'","Trable_occur_day_c__c":"2022/03/24 10:45","Taking_call_Time_c__c":"2022/03/24 10:45","First_ploblem_c__c":"","From_c__c":"","To_c__c":"","Oncall_Equipment__c":"000000000000000","Oncall_Product_manual__c":"","Customer_Problem_c__c":"","FinishDataTime__c":"","Customer_sigh_c__c":false,"Customer_sigh_day_c__c":"","AWS_Data_Id__c":"1234567890"}';
|
OnCallController.saveOnCall(onCallJson,'1adf234dafa',true);
|
OnCallController.saveOnCall(onCallJson,'1adf234dafa',false);
|
Test.stopTest();
|
}
|
}
|