/*
|
* Author: Zhang,Heyang
|
* Created Date: 2023/08/07
|
* Purpose: TestClass
|
*
|
* */
|
@isTest
|
private class LexNewAndEditAddressPIPLControllerTest {
|
public static String addRecordTypeId= Schema.SObjectType.Address__c.getRecordTypeInfosByDeveloperName().get('mainType').getRecordTypeId();
|
@testSetup
|
static void setupTestData() {
|
|
Address__c add = new Address__c();
|
add.ContactName__c = 'Test';
|
add.Telephone__c = '2345678';
|
add.RecordTypeId = addRecordTypeId;
|
insert add;
|
|
PI_Policy_Configuration__c config1 = new PI_Policy_Configuration__c(Sobject_Type__c = 'Address__c');
|
insert config1;
|
PI_Policy_Configuration__c config2 = new PI_Policy_Configuration__c(Sobject_Type__c = 'Address__cV2');
|
insert config2;
|
PI_Policy_Configuration__c config3 = new PI_Policy_Configuration__c(Sobject_Type__c = 'Contact');
|
insert config3;
|
PI_Field_Policy_Detail__c pfpd1 = new PI_Field_Policy_Detail__c(AWS_Field_API__c = 'phone1', SF_Field_API_Name__c = 'Phone1',PI_Policy_Configuration__c = config1.Id, Enable_Encrypt__c=true);
|
insert pfpd1;
|
PI_Field_Policy_Detail__c pfpd2 = new PI_Field_Policy_Detail__c(AWS_Field_API__c = 'phone2', SF_Field_API_Name__c = 'Phone2',PI_Policy_Configuration__c = config2.Id, Enable_Encrypt__c=true);
|
insert pfpd2;
|
PI_Field_Policy_Detail__c pfpd3 = new PI_Field_Policy_Detail__c(AWS_Field_API__c = 'phone2', SF_Field_API_Name__c = 'Phone2',PI_Policy_Configuration__c = config3.Id, Enable_Encrypt__c=true);
|
insert pfpd3;
|
|
}
|
@isTest
|
static void tesMethod1(){
|
Oly_TriggerHandler.bypass('ContactTriggerHandler');
|
Contact con = TestDataUtility.CreateContacts(1)[0];
|
con.AWS_Data_Id__c = 'davdsvgrqcx';
|
con.RecordTypeId = '01210000000QfWiAAK';
|
update con;
|
|
|
Address__c add = [SELECT Id FROM Address__c WHERE ContactName__c = 'Test' LIMIT 1];
|
String body='{"size":1,"totalSize":1,"done":true,"queryLocator":null,"entityTypeName":"ProfileLayout","records":[{"attributes":{"type":"ProfileLayout","url":"/services/data/v41.0/tooling/sobjects/ProfileLayout/01G1000000zCtzPEAS"},"Layout":{"attributes":{"type":"Layout","url":"/services/data/v41.0/tooling/sobjects/Layout/00h10000009eNTxAAM"},"Name":"收货地址 布局","TableEnumOrId":"01I10000001ImJMEA0"},"ProfileId":"00e10000000Y3o5AAC","Profile":{"attributes":{"type":"Profile","url":"/services/data/v41.0/tooling/sobjects/Profile/00e10000000Y3o5AAC"},"Name":"系统管理员"},"RecordTypeId":"01210000000VLkgAAG"}]}';
|
Test.setMock(HttpCalloutMock.class, new BaseHttpMock(body,'1','200'));
|
|
System.Test.startTest();
|
String objectType = 'Address__c';
|
List<Metadata.LayoutSection> layout = MetaDataUtility.GetRecordTypePageLayout('',objectType);
|
LexNewAndEditBasePIPLController.initData(add.Id,addRecordTypeId,objectType);
|
LexNewAndEditAddressPIPLController.initData(add.Id,addRecordTypeId,objectType);
|
LexNewAndEditAddressPIPLController.getContactByAWSId('davdsvgrqcx');
|
System.Test.stopTest();
|
|
}
|
public class BaseHttpMock implements HttpCalloutMock {
|
String body ='';
|
String status = '';
|
String statusCode = '';
|
public BaseHttpMock(String body,String status,String statusCode){
|
this.body = body;
|
this.status = status;
|
this.statusCode = statusCode;
|
}
|
public HTTPResponse respond(HTTPRequest req) {
|
HttpResponse res = new HttpResponse();
|
res.setHeader('Content-Type', 'application/json');
|
res.setBody(body);
|
res.setStatus('OK');
|
res.setStatusCode(200);
|
return res;
|
}
|
}
|
|
}
|