Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Apex Web Services from (module - Apex Integration Services)
- -------------------------------------------------
- SOURCE CODE: AccountManager
- @RestResource(urlMapping='/Accounts/*/contacts')
- global class AccountManager {
- @HttpGet
- global static Account getAccount() {
- RestRequest req = RestContext.request;
- String accId = req.requestURI.substringBetween('Accounts/', '/contacts');
- Account acc = [SELECT Id, Name, (SELECT Id, Name FROM Contacts)
- FROM Account WHERE Id = :accId];
- return acc;
- }
- }
- -------------------------------------------------
- SOURCE CODE: AccountManagerTest
- @isTest
- private class AccountManagerTest {
- private static testMethod void getAccountTest1() {
- Id recordId = createTestRecord();
- // Set up a test request
- RestRequest request = new RestRequest();
- request.requestUri = 'https://na1.salesforce.com/services/apexrest/Accounts/'+ recordId +'/contacts' ;
- request.httpMethod = 'GET';
- RestContext.request = request;
- // Call the method to test
- Account thisAccount = AccountManager.getAccount();
- // Verify results
- System.assert(thisAccount != null);
- System.assertEquals('Test record', thisAccount.Name);
- }
- // Helper method
- static Id createTestRecord() {
- // Create test record
- Account TestAcc = new Account(
- Name='Test record');
- insert TestAcc; Contact TestCon= new Contact(
- LastName='Test',
- AccountId = TestAcc.id);
- return TestAcc.Id;
- }}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement