You need to sign in to do that
Don't have an account?
Samadhan Daud
How to write test class in this class?
ublic class MyUploadStatementController {
public String LeadsId {get;set;}
public List<Attachment> docs{get;set;}
public List<Attachment> insertedDocs{get;set;}
public string attNames{get;set;}
public MyUploadStatementController(){
LeadsId = ApexPages.currentPage().getParameters().get('Id');
system.debug('LeadId -->'+LeadsId);
attNames = '';
docs = new List<Attachment>();
insertedDocs = new List<Attachment>();
}
public pagereference prepareSFDocuments(){
try{
//system.debug('**'+leadobj);
attNames = attNames.removeEnd('\n');
List<string> atts = attNames.split('\n');
//sfDocs = new List<SFDocument>();
for(String attName:atts){
List<string> nameSplit = attName.split('\t');
system.debug('Attname just '+attName);
Attachment doc = new Attachment(Name=nameSplit[0], ParentId=LeadsId );
docs.add(doc);
system.debug('Debug Docs '+docs);
//SFDocument d = new SFDocument(nameSplit[0], leadobj.id,Long.valueOf(nameSplit[1]),getDisplaySize(Long.valueOf(nameSplit[1])));
//sfDocs.add(d);
}
System.debug('Attachment List-->'+docs);
//Integer.valueOf('***'+docs.size());
}catch(Exception ex){ApexPages.Message myMsg = new ApexPages.Message(ApexPages.Severity.ERROR, ex.getMessage()+'\n'+ex.getStackTraceString());
ApexPages.addMessage(myMsg);}
return null;
}
public pagereference updateDocs(){
//Integer.valueof('pare'+parentId);
try{
system.debug('Dropbox docs '+docs);
for(Attachment da : docs){
system.debug('Inside For Loop DropBox '+da);
da.ParentId = LeadsId;
}
if(docs.size()>0)
insert docs;
insertedDocs.addAll(docs);
docs = new List<Attachment>();
}catch(Exception ex){
ApexPages.Message myMsg = new ApexPages.Message(ApexPages.Severity.ERROR, ex.getMessage());
ApexPages.addMessage(myMsg);
}
return null;
}
@RemoteAction
public static void UploadAttachment(String LeadId){
}
}
public String LeadsId {get;set;}
public List<Attachment> docs{get;set;}
public List<Attachment> insertedDocs{get;set;}
public string attNames{get;set;}
public MyUploadStatementController(){
LeadsId = ApexPages.currentPage().getParameters().get('Id');
system.debug('LeadId -->'+LeadsId);
attNames = '';
docs = new List<Attachment>();
insertedDocs = new List<Attachment>();
}
public pagereference prepareSFDocuments(){
try{
//system.debug('**'+leadobj);
attNames = attNames.removeEnd('\n');
List<string> atts = attNames.split('\n');
//sfDocs = new List<SFDocument>();
for(String attName:atts){
List<string> nameSplit = attName.split('\t');
system.debug('Attname just '+attName);
Attachment doc = new Attachment(Name=nameSplit[0], ParentId=LeadsId );
docs.add(doc);
system.debug('Debug Docs '+docs);
//SFDocument d = new SFDocument(nameSplit[0], leadobj.id,Long.valueOf(nameSplit[1]),getDisplaySize(Long.valueOf(nameSplit[1])));
//sfDocs.add(d);
}
System.debug('Attachment List-->'+docs);
//Integer.valueOf('***'+docs.size());
}catch(Exception ex){ApexPages.Message myMsg = new ApexPages.Message(ApexPages.Severity.ERROR, ex.getMessage()+'\n'+ex.getStackTraceString());
ApexPages.addMessage(myMsg);}
return null;
}
public pagereference updateDocs(){
//Integer.valueof('pare'+parentId);
try{
system.debug('Dropbox docs '+docs);
for(Attachment da : docs){
system.debug('Inside For Loop DropBox '+da);
da.ParentId = LeadsId;
}
if(docs.size()>0)
insert docs;
insertedDocs.addAll(docs);
docs = new List<Attachment>();
}catch(Exception ex){
ApexPages.Message myMsg = new ApexPages.Message(ApexPages.Severity.ERROR, ex.getMessage());
ApexPages.addMessage(myMsg);
}
return null;
}
@RemoteAction
public static void UploadAttachment(String LeadId){
}
}
Each test should follow the following structure:
- Setup of test data. This includes creation of any data needed by your class. Account, Contacts etc
- Starting the test. This is calling Test.startTest() to reset the governor limits
- Calling your class / method
- Stopping the test.This is calling Test.stopTest() to reset the governor limits and allow for any async jobs to finish
- Asserting that your changes have worked
- If you have inserted/updated/deleted data, you need to query for the updates
- Run System.assert, System.assertEquals, System.assertNotEquals to verify that you got the correct data back
If you have any specific problems with your tests, feel free to create a new post with the part of the class you are trying to test and your current test method, and you will more likely get a better response then asking for someone to essentially write an entire test class for you.[1] http://www.sfdc99.com/2013/05/14/how-to-write-a-test-class/
[2] http://pcon.github.io/presentations/testing/
[3] http://blog.deadlypenguin.com/blog/2014/07/23/intro-to-apex-auto-converting-leads-in-a-trigger/
[4] http://blog.deadlypenguin.com/blog/testing/strategies/