Loading
메일 전송 도메인 확인 상태 안내더 많이 읽기
Salesforce 조직 설정 및 유지 관리
목차
필터 선택

          결과 없음
          결과 없음
          몇 가지 검색 팁

          키워드의 맞춤법을 확인하십시오.
          더 일반적인 검색 용어를 사용하십시오.
          필터 수를 줄여 검색 범위를 확장하십시오.

          전체 Salesforce 도움말 검색
          아카이브 Apex 테스트

          아카이브 Apex 테스트

          프로덕션 환경에서 작업하기 전에 아카이브 앱의 아카이브 Apex Apex 클래스 래퍼에서 테스트를 실행합니다.

          MockHttpResponseGenerator.cls

          이 코드는 콜아웃을 위한 모의 코드를 나타냅니다. MockHttpResponseGenerator 클래스는 HttpCalloutMock Apex 인터페이스를 구현합니다.

          @isTest
          global class MockHttpResponseGenerator implements HttpCalloutMock {
          public String fakeResponseJson;
          public integer statusCode;
          String redirectHeader;
          
          public MockHttpResponseGenerator(String fakeResponseJson,Integer statusCode){
          this.statusCode = statusCode;
          this.fakeResponseJson = fakeResponseJson;
          this.redirectHeader = '/example/test';
          
          }
          
          public HTTPResponse respond(HTTPRequest req) {
          HTTPResponse res = new HTTPResponse();
          res.setBody(this.fakeResponseJson);
          res.setStatusCode(this.statusCode);
          res.setHeader('Location',  this.redirectHeader);
          return res;
          }
          }

          SearchSdkTest.cls

          이 코드는 MockHttpResponseGenerator 클래스를 사용하여 모의 HTTP를 설정하여 SF_Archive.ArchiverAccessor의 전역 검색 기능을 테스트합니다. 이 테스트는 검색 작업이 예상 JSON 데이터 및 상태 코드를 반환하는지 확인합니다.

          @isTest
          public with sharing class searchSdkTest {
          
          @isTest
          private static void searchSdk() {
          // Define a JSON string to be used as the mock response body
          String jsonBody = '{"records": [{"CaseNumber":"01916767", "Id":"500Xx000000XXXXXX"}], "total_result_count": 1, "scroll_id":"-1" }';
          
          // Set up the mock HTTP response using the predefined JSON body and HTTP 200 status code
          SF_Archive.ArchiverAccessor.setMock((HttpCalloutMock) new MockHttpResponseGenerator(jsonBody, SF_Archive.ArchiverAccessorResponse.HTTP_200_OK));
          
          // Insert a test archive configuration
          insert createTestArchiveConfiguration();
          
          // Create a list to hold search filters
          list<SF_Archive.SearchFilter> request1 = new list<SF_Archive.SearchFilter>();
          
          // Create a new search filter with the name 'test' and add it to the list
          SF_Archive.SearchFilter filter1 = new SF_Archive.SearchFilter('Name', 'test');
          request1.add(filter1);
          
          // Start the test context
          Test.startTest();
          
          // Perform a global search using the archiver accessor and capture the response
          SF_Archive.ArchiverAccessorResponse res = SF_Archive.ArchiverAccessor.performArchiverGlobalSearch('Account', request1);
          
          // Stop the test context
          Test.stopTest();
          
          // Assert that the response status code is HTTP 200 OK
          system.assertEquals(SF_Archive.ArchiverAccessorResponse.HTTP_200_OK, res.getStatusCode());
          
          // Assert that the response body matches the predefined JSON body
          system.assertEquals(res.getBody(), jsonBody);
          }
          
          private static SF_Archive_Configuration__c createTestArchiveConfiguration(){
          return createTestArchiveConfiguration('https://example');
          }
          public static SF_Archive_Configuration__c createTestArchiveConfiguration(String url){
          SF_Archive_Configuration__c ac = new SF_Archive_Configuration__c();
          ac.Name = 'SF_URL';
          ac.SF_URL__c = url;
          ac.SF_API_Name__c='SF_URL';
          return ac;
          }
          }
           
          로드 중
          Salesforce Help | Article