You need to sign in to do that
Don't have an account?
Ramana123
Can you help in this test class for sending email please
How to cover that email sending in salesforce ...?
apex class
public class NewWrapperClass {
public List<wrapperTask> wrapperTaskList {get;set;}
// public List<Challenge__c> existingRecords {get;set;}
public List<challenge__c> selectedRecords {get;set;}
public List<challenge__c> selectedRecords1 {get;set;}
public NewWrapperClass()
{
wrapperTaskList = new List<wrapperTask>();
// existingRecords = [SELECT Phone__c, Name,OwnerId FROM Challenge__c WHERE Account__c = NULL];
for(Challenge__c c : [SELECT Name,Phone__c,OwnerId,Account__c FROM Challenge__c WHERE Account__c = NULL])
{
wrapperTaskList.add(new wrapperTask(c));
}
}
public void processedRecords()
{
selectedRecords = new List<challenge__c>();
selectedRecords1 = new List<challenge__c>();
for (wrapperTask obj : wrapperTaskList)
{
if(obj.selected == true)
{
obj.chg.Account__c = ApexPages.currentPage().getParameters().get('id');
selectedRecords.add(obj.chg);
}
// selectedRecords.add(obj.chg);
}
update selectedRecords;
//existingRecords = [SELECT Phone__c, Name,OwnerId FROM Challenge__c WHERE Account__c =: ApexPages.currentPage().getParameters().get('id')];
}
public void sendEmail()
{
String subject='Test Subject';
String body='Test Body';
List<Messaging.SingleEmailMessage> listmails = new List<Messaging.SingleEmailMessage>();
for(Account acc :[SELECT Owner.Email FROM Account WHERE Id=:ApexPages.currentPage().getParameters().get('id')])
{
Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
List<String> sendTo = new List<String>();
sendTo.add(acc.Owner.Email );
email.setToAddresses(sendTo);
email.setSubject(subject);
email.setPlainTextBody(body);
listMails.add(email);
}
Messaging.sendEmail(listMails);
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.CONFIRM,'Mail has been sent Successfully'));
}
public class wrapperTask
{
public challenge__c chg {get;set;}
public Boolean selected {get;set;}
public wrapperTask(challenge__c c)
{
chg = c;
selected=false;
}
}
}
test class
@isTest
Private Class NewWrapperClass_Test
{
static Testmethod void WrapperExampleUnitTest()
{
challenge__c Acc= new challenge__c();
Acc.name='TestAccount';
Acc.Account__c =NULL;
insert Acc;
challenge__c Acc1= new challenge__c();
Acc1.name='TestAccount1';
insert Acc1;
Test.StartTest();
NewWrapperClass obj = new NewWrapperClass();
for(NewWrapperClass.wrapperTask wrp : obj.wrapperTaskList )
{
wrp.selected = true;
}
obj.processedRecords();
obj.sendEmail();
Test.StopTest();
}
}
Thanks in advance
apex class
public class NewWrapperClass {
public List<wrapperTask> wrapperTaskList {get;set;}
// public List<Challenge__c> existingRecords {get;set;}
public List<challenge__c> selectedRecords {get;set;}
public List<challenge__c> selectedRecords1 {get;set;}
public NewWrapperClass()
{
wrapperTaskList = new List<wrapperTask>();
// existingRecords = [SELECT Phone__c, Name,OwnerId FROM Challenge__c WHERE Account__c = NULL];
for(Challenge__c c : [SELECT Name,Phone__c,OwnerId,Account__c FROM Challenge__c WHERE Account__c = NULL])
{
wrapperTaskList.add(new wrapperTask(c));
}
}
public void processedRecords()
{
selectedRecords = new List<challenge__c>();
selectedRecords1 = new List<challenge__c>();
for (wrapperTask obj : wrapperTaskList)
{
if(obj.selected == true)
{
obj.chg.Account__c = ApexPages.currentPage().getParameters().get('id');
selectedRecords.add(obj.chg);
}
// selectedRecords.add(obj.chg);
}
update selectedRecords;
//existingRecords = [SELECT Phone__c, Name,OwnerId FROM Challenge__c WHERE Account__c =: ApexPages.currentPage().getParameters().get('id')];
}
public void sendEmail()
{
String subject='Test Subject';
String body='Test Body';
List<Messaging.SingleEmailMessage> listmails = new List<Messaging.SingleEmailMessage>();
for(Account acc :[SELECT Owner.Email FROM Account WHERE Id=:ApexPages.currentPage().getParameters().get('id')])
{
Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
List<String> sendTo = new List<String>();
sendTo.add(acc.Owner.Email );
email.setToAddresses(sendTo);
email.setSubject(subject);
email.setPlainTextBody(body);
listMails.add(email);
}
Messaging.sendEmail(listMails);
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.CONFIRM,'Mail has been sent Successfully'));
}
public class wrapperTask
{
public challenge__c chg {get;set;}
public Boolean selected {get;set;}
public wrapperTask(challenge__c c)
{
chg = c;
selected=false;
}
}
}
test class
@isTest
Private Class NewWrapperClass_Test
{
static Testmethod void WrapperExampleUnitTest()
{
challenge__c Acc= new challenge__c();
Acc.name='TestAccount';
Acc.Account__c =NULL;
insert Acc;
challenge__c Acc1= new challenge__c();
Acc1.name='TestAccount1';
insert Acc1;
Test.StartTest();
NewWrapperClass obj = new NewWrapperClass();
for(NewWrapperClass.wrapperTask wrp : obj.wrapperTaskList )
{
wrp.selected = true;
}
obj.processedRecords();
obj.sendEmail();
Test.StopTest();
}
}
Thanks in advance
If you’re looking for help with Apex or Visualforce Code, or with your API integration, please check out our Premier and Partner Success Plans.
For Premier Success Plans, please visit: https://www.salesforce.com/services/success-plans/overview/premier-success-plans/
For Partner Success Plans with limited or unlimited Developer Support, please visit: http://www.salesforce.com/assets/pdf/datasheets/DS_PartnerSupport.pdf"