From 410599fdf4f96d7f19b51bc28e544fa4e8780a1e Mon Sep 17 00:00:00 2001
From: binxie <137736985@qq.com>
Date: 星期一, 26 六月 2023 14:06:00 +0800
Subject: [PATCH] backup
---
force-app/main/default/classes/NewAndEditLeadControllerTest.cls | 348 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 303 insertions(+), 45 deletions(-)
diff --git a/force-app/main/default/classes/NewAndEditLeadControllerTest.cls b/force-app/main/default/classes/NewAndEditLeadControllerTest.cls
index 9aec75f..3c85e99 100644
--- a/force-app/main/default/classes/NewAndEditLeadControllerTest.cls
+++ b/force-app/main/default/classes/NewAndEditLeadControllerTest.cls
@@ -2,58 +2,316 @@
* Author: Guo, Aline Yaying
* Created Date: 03/22/2022
* Purpose: Test Class
- * History:
+ * History:
* 03/22/2022 - Guo, Aline Yaying - Initial Code.
- *
+ *
* */
@isTest
private class NewAndEditLeadControllerTest {
- @TestSetup
- static void makeData(){
- List<String> strList= new List<String>();
- strList.add('Lead');
- strList.add('Contact');
- strList.add('Inquiry_form__c');
- strList.add('LeadV2');
- TestDataUtility.CreatePIPolicyConfigurations(strList);
+ @TestSetup
+ static void makeData() {
+ List<String> strList = new List<String>();
+ strList.add('Lead');
+ strList.add('Contact');
+ strList.add('Inquiry_form__c');
+ strList.add('LeadV2');
+ TestDataUtility.CreatePIPolicyConfigurations(strList);
+ }
+ static testMethod void testMethod1() {
+ Test.setMock(
+ HttpCalloutMock.class,
+ new TestDataUtility.CreateMetaDataUtilityHttpMock()
+ );
+ Test.startTest();
+ List<RecordType> rectCo = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'
+ ];
+ if (rectCo.size() == 0) {
+ return;
}
- static testMethod void testMethod1() {
+ List<RecordType> rectAcc = [
+ SELECT Id
+ FROM RecordType
+ WHERE
+ IsActive = TRUE
+ AND SobjectType = 'Account'
+ AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
+ if (rectAcc.size() == 0) {
+ return;
+ }
+ Account accountItem1 = new Account(
+ Name = 'testaccount001',
+ Dealer_discount__c = 10,
+ RecordTypeId = rectCo[0].Id
+ );
+ insert accountItem1;
+ Account accountItem3 = new Account(
+ Name = 'testaccount001',
+ Dealer_discount__c = 10,
+ RecordTypeId = rectAcc[0].Id,
+ ParentId = accountItem1.Id
+ );
+ insert accountItem3;
+ Account accountItem2 = new Account(
+ Name = 'testaccount002',
+ Dealer_discount__c = 10,
+ RecordTypeId = rectCo[0].Id,
+ Hospital__c = accountItem1.Id,
+ Department_Class__c = accountItem3.Id
+ );
+ insert accountItem2;
- Test.setMock(HttpCalloutMock.class, new TestDataUtility.CreateMetaDataUtilityHttpMock());
- Test.startTest();
- Lead leadTest = new Lead();
- Contact cont = new Contact();
- ApexPages.StandardController con = new ApexPages.StandardController(leadTest);
- NewAndEditLeadController lead = new NewAndEditLeadController(con);
-
- String leadJson = '{"RecordTypeId":"01210000000QiRaAAK","Lead_No__c":"IN-JS-2022040127183","Status":"鏈窡杩�","Hospital_Name__c":"0011000000VAPEt","Department_Class__c":"0011000000V9bh5","Salutation":"","LastName":"***","Contact_Name__c":"0031m00000DHrkV","Cancel_Reason__c":"","Phone":"","Opp_Name_Search__c":"000000000000000","Email":"","Opp_Name__c":"Test","owner_not_automatically_update__c":false,"Purchase_Plan__c":"鏈�(鏃犻绠�)","Lead_Inquiry_form__c":"000000000000000","Opportunity_Division__c":"璇环","LeadSource":"鐢佃瘽","Campaign__c":"000000000000000","urgent__c":false,"SI_PromoteInquiry__c":false,"Request__c":"","Request_Detail__c":"","Opportunity_stage__c":"棰勭畻娌℃湁鎵瑰噯","Close_Forecasted_Date__c":"2022/04/01","Purchase_Reason__c":"鏇存柊","Sales_Method__c":"鍗曚竴鏉ユ簮閲囪喘","Fund_Basis__c":"閵�琛岃硣閲�","Purchase_Type__c":"涓�鑸紩鍚�","Company":"姹熻嫃鐪佷汉姘戝尰闄� 鍛煎惛绉� 鍛煎惛绉�","Name_Encrypted__c":"48a2693f6bf73d16e0abd48caf7fb756","Phone_Encrypted__c":"","Email_Encrypted__c":"","AWS_Data_Id__c":"959584917346320385"}';
- NewAndEditLeadController.saveLead(leadJson,'avgwshDFcxAS',False);
- NewAndEditLeadController.saveLead(leadJson,'avgwshDFcxAS',True);
+ Contact contact2 = new Contact();
+ contact2.AccountId = accountItem2.Id;
+ contact2.FirstName = '璨换鑰�';
+ contact2.LastName = 'test1缁忛攢鍟�';
+ contact2.AWS_Data_Id__c = 'Test123';
+ insert contact2;
- Test.stopTest();
+ Lead leadTest = new Lead();
+ leadTest.LastName = 'test';
+ leadTest.Company = 'test';
+ leadTest.hospital__c = accountItem2.Hospital__c;
+ leadTest.Contact_Name__c = contact2.Id;
+ insert leadTest;
+
+ Inquiry_form__c inquiryform = new Inquiry_form__c();
+ inquiryform.Name = '2023062001';
+ inquiryform.Request1__c = '闇�瑕佹姤浠�';
+ inquiryform.Product1__c = '瓒呭0';
+ inquiryform.Hospital__c = accountItem2.Hospital__c;
+ inquiryform.Contact_Name__c = contact2.Id;
+
+ inquiryform.Opportunity_Division__c = '璇环';
+ insert inquiryform;
+
+ String contactDataId = contact2.AWS_Data_Id__c;
+
+ Boolean isClone = true;
+ Boolean isNew = true;
+ Map<string, string> AWSToSobjectEncryptedMap = new Map<String, String>();
+ String AWSToSobjectEncryptedMapJson = JSON.serialize(
+ AWSToSobjectEncryptedMap
+ );
+ PIHelper.PIIntegration piIntegration = PIHelper.getPIIntegrationInfo(
+ 'Lead'
+ );
+ for (PI_Field_Policy_Detail__c PIDetail : piIntegration.PIDetails) {
+ AWSToSobjectEncryptedMap.put(
+ PIDetail.AWS_Field_API__c,
+ PIDetail.SF_Field_API_Name__c
+ );
+ }
+ Map<string, string> mso = ApexPages.currentPage().getParameters();
+ mso.put('newclone', 'newclone');
+ mso.put('CF00N1000000962np_lkid', inquiryform.Id);
+ mso.put('CF00N10000006ps6f_lkid', contact2.Id);
+ mso.put('CF00N10000002CvC5_lkid', accountItem2.Hospital__c);
+ mso.put('CF00N10000002CvC5', 'Company');
+ mso.put('LeadSource', 'LeadSource');
+
+ String InquiryFormId = mso.get('CF00N1000000962np_lkid');
+ String contactId = mso.get('CF00N10000006ps6f_lkid');
+ Boolean isNewMode = false;
+ String recordId = leadTest.Id;
+ String rid = '';
+ ApexPages.StandardController con = new ApexPages.StandardController(
+ leadTest
+ );
+ NewAndEditLeadController lead = new NewAndEditLeadController(con);
+ Inquiry_form__c ifc = lead.ifc;
+ String token = lead.awsToken;
+ String AWSDataId = lead.AWSDataId;
+ String AWSDataIdInquiryForm = lead.AWSDataIdInquiryForm;
+ contactId = lead.contactId; //For Lookup field
+ String contactsInfo = lead.contactsInfo; //key sfid;value awsid
+ Map<String, String> sfIdToAWSIdMap = new Map<String, String>();
+
+ SObject obj = con.getRecord();
+ obj.put('Hospital_Name__c', mso.get('CF00N10000002CvC5_lkid'));
+ String hospitalId = mso.get('CF00N10000002CvC5_lkid');
+ if (obj.Id != null) {
+ Lead leadData = [
+ SELECT
+ Id,
+ RecordTypeId,
+ AWS_Data_Id__c,
+ Contact_Name__r.Id,
+ Contact_Name__r.AWS_Data_Id__c
+ FROM Lead
+ WHERE id = :obj.Id
+ ];
+ String rtTypeId = leadData.RecordTypeId;
+ AWSDataId = leadData.AWS_Data_Id__c;
+ if (leadData.Contact_Name__r.Id != null) {
+ sfIdToAWSIdMap.put(
+ String.valueof(leadData.Contact_Name__r.Id).subString(0, 15),
+ leadData.Contact_Name__r.AWS_Data_Id__c
+ );
+ }
+ contactsInfo = JSON.serialize(sfIdToAWSIdMap);
}
- static testMethod void testMethod3() {
- Lead leadTest = new Lead();
- String url = ApexPages.currentPage().getParameters().put('CF00N10000006ps6f_lkid','000000000000000');
- url = ApexPages.currentPage().getParameters().put('RecordType','01210000000QiRf');
- Test.startTest();
- try{
- NewAndEditLeadController.ControllerUtil();
- ApexPages.StandardController con = new ApexPages.StandardController(leadTest);
- NewAndEditLeadController lc = new NewAndEditLeadController(con);
- String jsonString = '["Department_Class__c"]';
- system.debug('jsonString:'+JSON.deserializeUntyped(jsonString));
- String token = lc.awsToken;
- String AWSDataId = lc.AWSDataId;
- String AWSDataIdInquiryForm = lc.AWSDataIdInquiryForm;
- String contactId = lc.contactId;//For Lookup field
- String contactsInfo = lc.contactsInfo ;//key sfid;value awsid
- Inquiry_form__c ifc = lc.ifc;
- NewAndEditLeadController.queryAccount(jsonString, '000000000000000');
- }catch(Exception e){
- system.debug('Exception from query account:'+e.getMessage());
- }
- Test.stopTest();
+ String leadJson = '{"RecordTypeId":"01210000000QiRaAAK","Lead_No__c":"IN-JS-2022040127183","Status":"鏈窡杩�","Hospital_Name__c":"0011000000VAPEt","Department_Class__c":"0011000000V9bh5","Salutation":"","LastName":"***","Contact_Name__c":"0031m00000DHrkV","Cancel_Reason__c":"","Phone":"","Opp_Name_Search__c":"000000000000000","Email":"","Opp_Name__c":"Test","owner_not_automatically_update__c":false,"Purchase_Plan__c":"鏈�(鏃犻绠�)","Lead_Inquiry_form__c":"000000000000000","Opportunity_Division__c":"璇环","LeadSource":"鐢佃瘽","Campaign__c":"000000000000000","urgent__c":false,"SI_PromoteInquiry__c":false,"Request__c":"","Request_Detail__c":"","Opportunity_stage__c":"棰勭畻娌℃湁鎵瑰噯","Close_Forecasted_Date__c":"2022/04/01","Purchase_Reason__c":"鏇存柊","Sales_Method__c":"鍗曚竴鏉ユ簮閲囪喘","Fund_Basis__c":"閵�琛岃硣閲�","Purchase_Type__c":"涓�鑸紩鍚�","Company":"姹熻嫃鐪佷汉姘戝尰闄� 鍛煎惛绉� 鍛煎惛绉�","Name_Encrypted__c":"48a2693f6bf73d16e0abd48caf7fb756","Phone_Encrypted__c":"","Email_Encrypted__c":"","AWS_Data_Id__c":"959584917346320385"}';
+ NewAndEditLeadController.saveLead(leadJson, 'avgwshDFcxAS', false);
+ NewAndEditLeadController.saveLead(leadJson, 'avgwshDFcxAS', true);
+ NewAndEditLeadController.saveLead(leadJson, 'avgwshDFcxAS', isNew);
+
+ Test.stopTest();
+ }
+
+ static testMethod void testMethod2() {
+ Test.setMock(
+ HttpCalloutMock.class,
+ new TestDataUtility.CreateMetaDataUtilityHttpMock()
+ );
+ Test.startTest();
+ List<RecordType> rectCo = [
+ SELECT Id
+ FROM RecordType
+ WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '鐥呴櫌'
+ ];
+ if (rectCo.size() == 0) {
+ return;
}
-}
\ No newline at end of file
+ List<RecordType> rectAcc = [
+ SELECT Id
+ FROM RecordType
+ WHERE
+ IsActive = TRUE
+ AND SobjectType = 'Account'
+ AND Name = '鎴︾暐绉戝鍒嗛 鍛煎惛绉�'
+ ];
+ if (rectAcc.size() == 0) {
+ return;
+ }
+ Account accountItem1 = new Account(
+ Name = 'testaccount001',
+ Dealer_discount__c = 10,
+ RecordTypeId = rectCo[0].Id
+ );
+ insert accountItem1;
+ Account accountItem3 = new Account(
+ Name = 'testaccount001',
+ Dealer_discount__c = 10,
+ RecordTypeId = rectAcc[0].Id,
+ ParentId = accountItem1.Id
+ );
+ insert accountItem3;
+ Account accountItem2 = new Account(
+ Name = 'testaccount002',
+ Dealer_discount__c = 10,
+ RecordTypeId = rectCo[0].Id,
+ Hospital__c = accountItem1.Id,
+ Department_Class__c = accountItem3.Id
+ );
+ insert accountItem2;
+
+ Contact contact2 = new Contact();
+ contact2.AccountId = accountItem2.Id;
+ contact2.FirstName = '璨换鑰�';
+ contact2.LastName = 'test1缁忛攢鍟�';
+ contact2.AWS_Data_Id__c = 'Test123';
+ insert contact2;
+
+ Lead leadTest = new Lead();
+ leadTest.LastName = 'test';
+ leadTest.Company = 'test';
+ leadTest.hospital__c = accountItem2.Hospital__c;
+ leadTest.Contact_Name__c = contact2.Id;
+ insert leadTest;
+
+ Inquiry_form__c inquiryform = new Inquiry_form__c();
+ inquiryform.Name = '2023062001';
+ inquiryform.Request1__c = '闇�瑕佹姤浠�';
+ inquiryform.Product1__c = '瓒呭0';
+ inquiryform.Hospital__c = accountItem2.Hospital__c;
+ inquiryform.Contact_Name__c = contact2.Id;
+
+ inquiryform.Opportunity_Division__c = '璇环';
+ insert inquiryform;
+
+ String contactDataId = contact2.AWS_Data_Id__c;
+
+ Boolean isClone = true;
+ Boolean isNew = true;
+ Map<string, string> AWSToSobjectEncryptedMap = new Map<String, String>();
+ String AWSToSobjectEncryptedMapJson = JSON.serialize(
+ AWSToSobjectEncryptedMap
+ );
+ PIHelper.PIIntegration piIntegration = PIHelper.getPIIntegrationInfo(
+ 'Lead'
+ );
+ for (PI_Field_Policy_Detail__c PIDetail : piIntegration.PIDetails) {
+ AWSToSobjectEncryptedMap.put(
+ PIDetail.AWS_Field_API__c,
+ PIDetail.SF_Field_API_Name__c
+ );
+ }
+ Map<string, string> mso = ApexPages.currentPage().getParameters();
+ mso.put('newclone', 'newclone');
+ mso.put('CF00N1000000962np_lkid', null);
+ mso.put('CF00N10000006ps6f_lkid', contact2.Id);
+ mso.put('CF00N10000002CvC5_lkid', accountItem2.Hospital__c);
+ mso.put('CF00N10000002CvC5', 'Company');
+ mso.put('LeadSource', 'LeadSource');
+
+ String InquiryFormId = mso.get('CF00N1000000962np_lkid');
+ String contactId = mso.get('CF00N10000006ps6f_lkid');
+ Boolean isNewMode = false;
+ String recordId = leadTest.Id;
+ String rid = '';
+ ApexPages.StandardController con = new ApexPages.StandardController(
+ leadTest
+ );
+ NewAndEditLeadController lead = new NewAndEditLeadController(con);
+ Inquiry_form__c ifc = lead.ifc;
+ String token = lead.awsToken;
+ String AWSDataId = lead.AWSDataId;
+ String AWSDataIdInquiryForm = lead.AWSDataIdInquiryForm;
+ String contactsInfo = lead.contactsInfo; //key sfid;value awsid
+ Map<String, String> sfIdToAWSIdMap = new Map<String, String>();
+ SObject obj = con.getRecord();
+ obj.put('Hospital_Name__c', mso.get('CF00N10000002CvC5_lkid'));
+ String hospitalId = mso.get('CF00N10000002CvC5_lkid');
+
+ String leadJson = '{"RecordTypeId":"01210000000QiRaAAK","Lead_No__c":"IN-JS-2022040127183","Status":"鏈窡杩�","Hospital_Name__c":"0011000000VAPEt","Department_Class__c":"0011000000V9bh5","Salutation":"","LastName":"***","Contact_Name__c":"0031m00000DHrkV","Cancel_Reason__c":"","Phone":"","Opp_Name_Search__c":"000000000000000","Email":"","Opp_Name__c":"Test","owner_not_automatically_update__c":false,"Purchase_Plan__c":"鏈�(鏃犻绠�)","Lead_Inquiry_form__c":"000000000000000","Opportunity_Division__c":"璇环","LeadSource":"鐢佃瘽","Campaign__c":"000000000000000","urgent__c":false,"SI_PromoteInquiry__c":false,"Request__c":"","Request_Detail__c":"","Opportunity_stage__c":"棰勭畻娌℃湁鎵瑰噯","Close_Forecasted_Date__c":"2022/04/01","Purchase_Reason__c":"鏇存柊","Sales_Method__c":"鍗曚竴鏉ユ簮閲囪喘","Fund_Basis__c":"閵�琛岃硣閲�","Purchase_Type__c":"涓�鑸紩鍚�","Company":"姹熻嫃鐪佷汉姘戝尰闄� 鍛煎惛绉� 鍛煎惛绉�","Name_Encrypted__c":"48a2693f6bf73d16e0abd48caf7fb756","Phone_Encrypted__c":"","Email_Encrypted__c":"","AWS_Data_Id__c":"959584917346320385"}';
+ NewAndEditLeadController.saveLead(leadJson, 'avgwshDFcxAS', false);
+ NewAndEditLeadController.saveLead(leadJson, 'avgwshDFcxAS', true);
+ NewAndEditLeadController.saveLead(leadJson, 'avgwshDFcxAS', isNew);
+ Test.stopTest();
+ }
+
+ static testMethod void testMethod3() {
+ Lead leadTest = new Lead();
+ String url = ApexPages.currentPage()
+ .getParameters()
+ .put('CF00N10000006ps6f_lkid', '000000000000000');
+ url = ApexPages.currentPage()
+ .getParameters()
+ .put('RecordType', '01210000000QiRf');
+ Test.startTest();
+ try {
+ NewAndEditLeadController.ControllerUtil();
+ ApexPages.StandardController con = new ApexPages.StandardController(
+ leadTest
+ );
+ NewAndEditLeadController lc = new NewAndEditLeadController(con);
+ String jsonString = '["Department_Class__c"]';
+ system.debug('jsonString:' + JSON.deserializeUntyped(jsonString));
+ String token = lc.awsToken;
+ String AWSDataId = lc.AWSDataId;
+ String AWSDataIdInquiryForm = lc.AWSDataIdInquiryForm;
+ String contactId = lc.contactId; //For Lookup field
+ String contactsInfo = lc.contactsInfo; //key sfid;value awsid
+ Inquiry_form__c ifc = lc.ifc;
+ NewAndEditLeadController.queryAccount(jsonString, '000000000000000');
+ } catch (Exception e) {
+ system.debug('Exception from query account:' + e.getMessage());
+ }
+ Test.stopTest();
+ }
+}
--
Gitblit v1.9.1