buli
2022-05-13 2f4492ee18f90274582fcc2bb06f5e9bf64136e8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
@isTest
private class AWSServiceToolTest {
    static testMethod void testMethod1() {
        TestDataUtility.CreatePIPolicyConfiguration();
        Account acc = TestDataUtility.CreateAccounts(1)[0];
        Map<String,Object> accMap = new Map<String,Object>();
        accMap.put('Account',acc);
        accMap.put('object','vjdoneqvds');
        String mapJson = JSON.serialize(accMap);
        Test.setMock(HttpCalloutMock.class, new TestDataUtility.BaseHttpMock(mapJson,'OK','200'));
        AWS_Integration_Info__mdt awsConfiguration = [SELECT App_Id__c,Token_URL__c,App_Secret__c,Host_URL__c FROM AWS_Integration_Info__mdt  WHERE DeveloperName = 'AWS_Default_Configuration'];
        PIHelper.getPIIntegrationInfo('Document');
 
        Test.startTest();
        AWSServiceTool.getAWSServiceStatus();
        AWSServiceTool.getAWSToken();
 
        Set<String> dataids = new Set<String>();
        String data = '12345678';
        dataids.add(data); 
        Test.setMock(HttpCalloutMock.class, new TestDataUtility.BaseHttpMock(mapJson,'0','200'));
 
        AWSServiceTool.deleteFileAddress(dataids);
        Test.stopTest();
    }
    /*static testMethod void testMethod2() {
        // TestDataUtility.CreatePIPolicyConfiguration();
        Account acc = TestDataUtility.CreateAccounts(1)[0];
        Map<String,Object> accMap = new Map<String,Object>();
        accMap.put('Account',acc);
        accMap.put('object','vjdoneqvds');
        String mapJson = JSON.serialize(accMap);
        Test.setMock(HttpCalloutMock.class, new TestDataUtility.BaseHttpMock(mapJson,'OK','200'));
        Test.startTest();
        AWSServiceTool.getAWSToken();
        Test.stopTest();
    }*/
    static testMethod void testMethod3() {
        String searchContactName = 'test';
        String accountId = '0010l00001PQFkhAAH';
      
        Test.startTest();
        AWSServiceTool.getNoPIContact(searchContactName,accountId);
        Test.stopTest();
    }
    @isTest
    static void Test4(){
        Test.setMock(HttpCalloutMock.class, new HttpMock());
 
 
        Test.startTest();
        AWSServiceTool.sendToPiAWS('String rowDataStr', 'String endpoint','String awsToken');
        Test.stopTest();
    }
    class HttpMock implements HttpCalloutMock{
        
        string rid  = '';
        public HttpMock(){
        }
        public HttpMock(string rid){
            this.rid = rid;
        }
        public HTTPResponse respond(HTTPRequest request) {
        // 创建一个假的回应
        System.debug('------------------------------------------------------');
        HttpResponse response = new HttpResponse();
        string body = '';
        system.debug(request.getEndpoint());
        string url = request.getEndpoint();
            
        if(url.contains('token')){
            system.debug('url=token');
            response.setHeader('Content-Type', 'application/json');
            body='{ "message": "", "object": "freqfewqfewewfewfew", "status": "", "success": true, "timestamp": 0, "txId": "" }';            
        } else if(url.toLowerCase().contains('insert')){
            system.debug('url=Insert');
            response.setHeader('Content-Type', 'application/json');
            body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "'+rid+'" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }';            
        } else if(url.toLowerCase().contains('update')){
            system.debug('url=update');
            response.setHeader('Content-Type', 'application/json');
            body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "'+rid+'" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }';            
        } else{
            
        }
        
        response.setBody(body);
        response.setStatus('OK');
        response.setStatusCode(200);
        return response;
        // }
    }
    }
}