Loading
Uw Salesforce-organisatie instellen en onderhouden
Inhoudsopgave
Filters selecteren

          Geen resultaten
          Geen resultaten
          Hier zijn enkele zoektips

          Controleer de spelling van uw trefwoorden.
          Gebruik meer algemene zoektermen.
          Verwijder filters om uw zoekopdracht uit te breiden.

          De Help van Salesforce volledig doorzoeken
          Apex testen archiveren

          Apex testen archiveren

          Voordat u in uw productieomgeving werkt, voert u tests uit in uw Apex Class Wrapper in Apex archiveren in de app Archief.

          MockHttpResponseGenerator.cls

          Deze code toont de nep-aanroep. De MockHttpResponseGenerator klasse implementeert de HttpCalloutMock Apex interface.

          @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

          Deze code test de globale zoekfunctionaliteit van de SF_Archive.ArchiverAccessor door een nep-HTTP in te stellen met behulp van de klasse MockHttpResponseGenerator. Deze test controleert of de zoekbewerking de verwachte JSON-gegevens en statuscode retourneert.

          @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;
          }
          }
           
          Wordt geladen
          Salesforce Help | Article