@isTest
|
private class OpportunityAndContactDailyUpdateTest {
|
@testsetup
|
private static void setup (){
|
TestDataUtility.CreatePIPolicyConfiguration('Agency_Contact__c');
|
string profid = '00e10000000Y3o5';
|
string rectHpID = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId();
|
List<String> classDeptStr = new List<String>();
|
classDeptStr.add('Department_Class_GI');
|
classDeptStr.add('Department_Class_ET');
|
classDeptStr.add('Department_Class_BF');
|
classDeptStr.add('Department_Class_GS');
|
classDeptStr.add('Department_Class_URO');
|
classDeptStr.add('Department_Class_GYN');
|
classDeptStr.add('Department_Class_ENT');
|
classDeptStr.add('Department_Class_OTH');
|
List<RecordType> rectDept = [select Id,developername from RecordType where IsActive = true and SobjectType = 'Account' and developername in:classDeptStr];
|
|
Map<String,String> classDeptMap = new Map<String,String>();
|
|
for(String Str : classDeptStr){
|
for(RecordType rt : rectDept){
|
if(rt.developername == Str){
|
classDeptMap.put(Str, rt.Id);
|
}
|
}
|
}
|
User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = profid);
|
insert hpOwner;
|
|
|
List<User> insertUser = new List<User>();
|
user UserGI = New User(
|
|
Alias = 'GI_User',
|
Email='GI_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserGI',
|
Firstname ='GI',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserGI@testorg.com');
|
insertUser.add(UserGI);
|
user UserET = New User(
|
|
Alias = 'ET_User',
|
Email='ET_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserET',
|
Firstname ='ET',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserET@testorg.com');
|
insertUser.add(UserET);
|
user UserBF = New User(
|
|
Alias = 'BF_User',
|
Email='BF_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserBF',
|
Firstname ='BF',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserBF@testorg.com');
|
insertUser.add(UserBF);
|
user UserGS = New User(
|
|
Alias = 'SP_User',
|
Email='SP_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserGS',
|
Firstname ='GS',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserGS@testorg.com');
|
insertUser.add(UserGS);
|
user UserURO = New User(
|
|
Alias = 'URO_User',
|
Email='URO_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserURO',
|
Firstname ='URO',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserURO@testorg.com');
|
insertUser.add(UserURO);
|
user UserGYN = New User(
|
|
Alias = 'GYN_User',
|
Email='GYN_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserGYN',
|
Firstname ='GYN',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserGYN@testorg.com');
|
insertUser.add(UserGYN);
|
user UserENT = New User(
|
|
Alias = 'ENT_User',
|
Email='ENT_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserENT',
|
Firstname ='ENT',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserENT@testorg.com');
|
insertUser.add(UserENT);
|
user UserFSE = New User(
|
|
Alias = 'FSEUser',
|
Email='FSE_User@testorg.com',
|
EmailEncodingKey='UTF-8',
|
LastName='testUserFSE',
|
Firstname ='FSE',
|
LanguageLocaleKey='zh_CN',
|
LocaleSidKey='zh_CN',
|
ProfileId = System.Label.ProfileId_SystemAdmin,
|
TimeZoneSidKey='Asia/Shanghai',
|
UserName='testUserFSE@testorg.com');
|
insertUser.add(UserFSE);
|
insert insertUser;
|
integer i = 0;
|
|
Map<String,String> NameTOno = New Map<String,String>();
|
for(user usr : insertUser){
|
NameTOno.put(usr.Id, usr.Employee_No__c);
|
}
|
Account Hospital = new Account(
|
name = 'Test Hospital',
|
RecordTypeId = rectHpId,
|
FSE_Main__c = UserFSE.Id,
|
ENT_owner_ID__c = UserENT.Id,
|
GYN_owner__c = UserGYN.Id,
|
URO_owner_ID__c = UserURO.Id,
|
SP_Main__c = UserGS.Id,
|
BF_owner__c = UserBF.Id,
|
ET_owner__c = UserET.Id,
|
GI_Main__c = UserGI.Id,
|
Is_Active__c ='有効'
|
);
|
insert Hospital;
|
|
List<Account> dcs =
|
[Select Id, Name, Department_Class_Label__c
|
from Account
|
where Parent.Id = :Hospital.Id and Department_Class_Label__c = '呼吸科'];
|
Account depart = new Account();
|
depart.RecordTypeId = '01210000000QfmR';
|
depart.Name = '*';
|
depart.Department_Name__c = '診療科';
|
depart.ParentId = dcs[0].Id;
|
depart.Department_Class__c = dcs[0].Id;
|
depart.Hospital__c = Hospital.Id;
|
depart.OwnerId = UserGS.Id;
|
insert depart;
|
//Contact core = new Contact(email='jplumber@salesforce.com',
|
//firstname='Joe',
|
//lastname='Plumber',
|
//accountid=depart.id);
|
//insert core;
|
Opportunity target = new Opportunity( Name = 'aiueo', StageName = 'contact', CloseDate = Date.today(),
|
accountid=depart.id);
|
target.Trade__c = '内貿';
|
target.CurrencyIsoCode = 'CNY';
|
target.Wholesale_Price__c = 9000;
|
target.Sales_Root__c = 'AAA';
|
insert target;
|
|
Inquiry_form__c inf =new Inquiry_form__c();
|
inf.Hospital_Name__c = depart.id;
|
inf.OwnerId = UserGI.Id;
|
inf.Name = 'test';
|
inf.Request1__c = '服务对应';
|
inf.Product1__c = '超声';
|
insert inf;
|
|
}
|
@isTest
|
static void Test1(){
|
Test.setMock(HttpCalloutMock.class, new HttpMock());
|
|
List<Agency_Contact__c> lra = new List<Agency_Contact__c>();
|
lra.add(new Agency_Contact__c(
|
Id = 'a2R1m0000007BPD'
|
));
|
Test.startTest();
|
//system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl);
|
AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c');
|
AWSServiceTool2.EncryptPushFuture(null,null);
|
Test.stopTest();
|
}
|
|
//@isTest
|
// static void Test2(){
|
// Test.setMock(HttpCalloutMock.class, new HttpMock());
|
|
// List<Agency_Contact__c> lra = new List<Agency_Contact__c>();
|
// lra.add(new Agency_Contact__c(
|
// Id = 'a2R1m0000007BPD',
|
// Aws_Data_Id__c = '123456'
|
// ));
|
// Test.startTest();
|
// //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl);
|
// AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c');
|
// Test.stopTest();
|
// }
|
|
class HttpMock implements HttpCalloutMock{
|
|
public HTTPResponse respond(HTTPRequest request) {
|
// 创建一个假的回应
|
System.debug('------------------------------------------------------');
|
HttpResponse response = new HttpResponse();
|
string body = '';
|
system.debug(request.getEndpoint());
|
if(request.getEndpoint().contains('token')){
|
system.debug('url=token');
|
response.setHeader('Content-Type', 'application/json');
|
body='{ "message": "", "object": "freqfewqfewewfewfew", "status": "", "success": true, "timestamp": 0, "txId": "" }';
|
} else if(request.getEndpoint().contains('insert')){
|
system.debug('url=Insert');
|
response.setHeader('Content-Type', 'application/json');
|
body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }';
|
} else if(request.getEndpoint().contains('update')){
|
system.debug('url=update');
|
response.setHeader('Content-Type', 'application/json');
|
body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }';
|
} else{
|
|
}
|
|
response.setBody(body);
|
response.setStatus('OK');
|
response.setStatusCode(200);
|
return response;
|
// }
|
}
|
}
|
|
static testMethod void testMethod1() {
|
Test.setMock(HttpCalloutMock.class, new HttpMock());
|
|
List<Agency_Contact__c> lra = new List<Agency_Contact__c>();
|
lra.add(new Agency_Contact__c(
|
Id = 'a2R1m0000007BPD',
|
Aws_Data_Id__c = '123456'
|
));
|
AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c');
|
list<account> acclist = [select id from account where name ='Test Hospital'];
|
Id execBTId = Database.executeBatch(new OpportunityAndContactDailyUpdateBatch(), 5);
|
execBTId = Database.executeBatch(new OpportunityAndContactDailyUpdateBatch('1.华北'), 5);
|
execBTId = Database.executeBatch(new OpportunityAndContactDailyUpdateBatch(10, acclist[0].id,
|
acclist[0].id,
|
acclist[0].id,
|
acclist[0].id,
|
acclist[0].id)
|
, 5);
|
execBTId = Database.executeBatch(new OpportunityAndContactDailyUpdateBatch(), 5);
|
|
}
|
}
|