From 8eeae5a9d806731411df1e542f201573d50bc92b Mon Sep 17 00:00:00 2001
From: 游畅 <youchang@prec-tech.com>
Date: 星期五, 22 四月 2022 18:20:05 +0800
Subject: [PATCH] 运行4月1日起新入职人员和离职人员信息

---
 force-app/main/default/classes/OdsToUserHandlerTest.cls |  131 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 120 insertions(+), 11 deletions(-)

diff --git a/force-app/main/default/classes/OdsToUserHandlerTest.cls b/force-app/main/default/classes/OdsToUserHandlerTest.cls
index 0e27d92..39209cf 100644
--- a/force-app/main/default/classes/OdsToUserHandlerTest.cls
+++ b/force-app/main/default/classes/OdsToUserHandlerTest.cls
@@ -5,6 +5,100 @@
  */
 @isTest
 private class OdsToUserHandlerTest {
+// AWSServiceTool2娌′笂绾垮氨鎶婅繖閮ㄥ垎娉ㄩ噴 start 20220408
+   @TestSetup
+    static void setup(){
+        TestDataUtility.CreatePIPolicyConfigurations(new string[]{'Agency_Contact__c','Contact'});
+    } 
+    
+  @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(
+        ));
+        insert lra;
+        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(
+            Aws_Data_Id__c = '123456'
+        ));
+        insert lra;
+        Test.startTest();
+        //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl);
+        AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c');
+        Test.stopTest();
+    }
+
+    @isTest
+    static void Test3(){
+        Test.setMock(HttpCalloutMock.class, new HttpMock());
+
+
+        Test.startTest();
+        AWSServiceTool2.EncryptPushData(new string[]{'0031000000O4Cff'});
+
+        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;
+        // }
+    }
+    }
+// AWSServiceTool2娌′笂绾垮氨鎶婅繖閮ㄥ垎娉ㄩ噴 end
     static testMethod void testMethod1() {
         // 鐪�
         Address_Level__c al = new Address_Level__c();
@@ -49,14 +143,14 @@
         dep.Department_Class__c = strategicDep[0].Id;
         dep.Hospital__c = hospital.Id;
         insert dep;
-
-        Contact contact2 = new Contact();
-        contact2.AccountId = dep.Id;
-        contact2.FirstName = '璨换鑰�';
-        contact2.LastName = 'test1缁忛攢鍟�';
-        contact2.Employee_No_manual__c = 'om003901';
-        insert contact2;
-
+// AWSServiceTool2娌′笂绾垮氨鎶婅繖閮ㄥ垎鏀惧紑 start  20220408
+        //Contact contact2 = new Contact();
+        //contact2.AccountId = dep.Id;
+        //contact2.FirstName = '璨换鑰�';
+        //contact2.LastName = 'test1缁忛攢鍟�';
+        //contact2.Employee_No_manual__c = 'om003901';
+        //insert contact2;
+// AWSServiceTool2娌′笂绾垮氨鎶婅繖閮ㄥ垎鏀惧紑 end
         ODS__c ods = new ODS__c();
         ods.ALIAS__C = 'om003901';
         ods.BRANCH__C = '';
@@ -81,9 +175,24 @@
         ods.Stay_or_not__c = '鍦ㄨ亴';
         ods.LeaveDate__c = Date.today();
 
-        insert ods;
+        Test.startTest();
+        try{
+            insert ods;
+            // AWSServiceTool2娌′笂绾垮氨鎶婅繖閮ㄥ垎娉ㄩ噴 start
+            Test.setMock(HttpCalloutMock.class, new HttpMock());
 
-        ods.LeaveDate__c = Date.today();
-        update ods;
+            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');
+            // AWSServiceTool2娌′笂绾垮氨鎶婅繖閮ㄥ垎娉ㄩ噴 end
+            ods.LeaveDate__c = Date.today()+1;
+            update ods;
+        }catch(Exception e){
+            system.debug('Exception from upsert file:'+e.getmessage());
+        }
+        Test.stopTest();
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1