Advertisement
Learnify_Rectify

Apex Web Services

Jun 25th, 2024 (edited)
10,319
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.58 KB | Source Code | 0 0
  1. Apex Web Services from (module - Apex Integration Services)
  2.  
  3. -------------------------------------------------
  4. SOURCE CODE: AccountManager
  5. @RestResource(urlMapping='/Accounts/*/contacts')
  6. global class AccountManager {
  7. @HttpGet
  8. global static Account getAccount() {
  9. RestRequest req = RestContext.request;
  10. String accId = req.requestURI.substringBetween('Accounts/', '/contacts');
  11. Account acc = [SELECT Id, Name, (SELECT Id, Name FROM Contacts)
  12. FROM Account WHERE Id = :accId];
  13. return acc;
  14.     }
  15. }
  16.  
  17. -------------------------------------------------
  18. SOURCE CODE: AccountManagerTest
  19. @isTest
  20. private class AccountManagerTest {
  21. private static testMethod void getAccountTest1() {
  22. Id recordId = createTestRecord();
  23. // Set up a test request
  24. RestRequest request = new RestRequest();
  25. request.requestUri = 'https://na1.salesforce.com/services/apexrest/Accounts/'+ recordId +'/contacts' ;
  26. request.httpMethod = 'GET';
  27. RestContext.request = request;
  28. // Call the method to test
  29. Account thisAccount = AccountManager.getAccount();
  30. // Verify results
  31. System.assert(thisAccount != null);
  32. System.assertEquals('Test record', thisAccount.Name);
  33.  
  34. }
  35. // Helper method
  36. static Id createTestRecord() {
  37. // Create test record
  38. Account TestAcc = new Account(
  39. Name='Test record');
  40. insert TestAcc; Contact TestCon= new Contact(
  41. LastName='Test',
  42. AccountId = TestAcc.id);
  43. return TestAcc.Id;
  44. }}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement