You need to sign in to do that
Don't have an account?
Sandesh Vishwakarma 9
Hi guys. Please help me out in writing test class for this HTTP callout code.
public class OpportunityToBeSent {
@future (callout=true)
public static void makePostCallout(String recId) {
String token;
// System.debug('recorddIdd' + recorddIdd);
Http http = new Http();
HttpRequest request = new HttpRequest();
request.setEndpoint('https://XXXXXXXXXXXXXXXXXXXX/authenticate');
request.setMethod('POST');
request.setHeader('Content-Type', 'application/json;charset=UTF-8');
// Set the body as a JSON object
request.setBody('{"email": "XXXXX@XXXX.com","password": "XXXXXX"}');
System.debug('request'+ request);
HttpResponse response = http.send(request);
System.debug('response'+ response);
// Parse the JSON response
if (response.getStatusCode() != 200) {
System.debug('The status code returned was not expected: ' +
response.getStatusCode() + ' ' + response.getStatus());
} else {
System.debug(response.getBody());
Map<String, Object> results = (Map<String, Object>) JSON.deserializeUntyped(response.getBody());
Map<String, Object> m2 = (Map<String, Object>) results.get('data');
System.debug('results'+ m2.get('jwtToken'));
token = (string)m2.get('jwtToken');
System.debug('token '+ token);
}
makePostCalloutt(recId , token);
}
public static void makePostCalloutt(String recId , String tokenn) {
System.debug('Token >>>'+ tokenn);
String body = recId;
Http http = new Http();
HttpRequest request = new HttpRequest();
request.setEndpoint('https://XXXXXXXXXXXXXXXX?id='+ body);
request.setMethod('POST');
request.setHeader('Content-Type', 'text');
request.setHeader( 'token', 'Bearer ' + tokenn );
// Set the body as a JSON object
request.setBody(body);
System.debug('request'+ request);
HttpResponse response = http.send(request);
System.debug('response'+ response);
// Parse the JSON response
if (response.getStatusCode() != 200) {
System.debug('The status code returned was not expected: ' +
response.getStatusCode() + ' ' + response.getStatus());
} else {
System.debug(response.getBody());
}
}
}
@future (callout=true)
public static void makePostCallout(String recId) {
String token;
// System.debug('recorddIdd' + recorddIdd);
Http http = new Http();
HttpRequest request = new HttpRequest();
request.setEndpoint('https://XXXXXXXXXXXXXXXXXXXX/authenticate');
request.setMethod('POST');
request.setHeader('Content-Type', 'application/json;charset=UTF-8');
// Set the body as a JSON object
request.setBody('{"email": "XXXXX@XXXX.com","password": "XXXXXX"}');
System.debug('request'+ request);
HttpResponse response = http.send(request);
System.debug('response'+ response);
// Parse the JSON response
if (response.getStatusCode() != 200) {
System.debug('The status code returned was not expected: ' +
response.getStatusCode() + ' ' + response.getStatus());
} else {
System.debug(response.getBody());
Map<String, Object> results = (Map<String, Object>) JSON.deserializeUntyped(response.getBody());
Map<String, Object> m2 = (Map<String, Object>) results.get('data');
System.debug('results'+ m2.get('jwtToken'));
token = (string)m2.get('jwtToken');
System.debug('token '+ token);
}
makePostCalloutt(recId , token);
}
public static void makePostCalloutt(String recId , String tokenn) {
System.debug('Token >>>'+ tokenn);
String body = recId;
Http http = new Http();
HttpRequest request = new HttpRequest();
request.setEndpoint('https://XXXXXXXXXXXXXXXX?id='+ body);
request.setMethod('POST');
request.setHeader('Content-Type', 'text');
request.setHeader( 'token', 'Bearer ' + tokenn );
// Set the body as a JSON object
request.setBody(body);
System.debug('request'+ request);
HttpResponse response = http.send(request);
System.debug('response'+ response);
// Parse the JSON response
if (response.getStatusCode() != 200) {
System.debug('The status code returned was not expected: ' +
response.getStatusCode() + ' ' + response.getStatus());
} else {
System.debug(response.getBody());
}
}
}
Please create the below mock apex class first:
Apex test class:
Thanks,
Maharajan.C