You need to sign in to do that
Don't have an account?
vinoth
Test class on Attachments Trigger.
Hi I need to write test class for the following trigger, but i could able to cover 65%.
trigger FormTypeAttachments on Attachment (before insert) {
List<Information_document_scan__c> FormType = [select id, Select_Form_Type__c from Information_document_scan__c where id =:Trigger.New[0].ParentId];
List<Attachment> atts = Trigger.new;
for(Attachment a:atts) {
if(FormType[0].Select_Form_Type__c=='Signature Card'){
a.addError('Signature Card should have only Four attachments.To go back to record,Click "Done" Button');
}
}
}
"a.addError" is not covering, how to Achieve more then 75%?
Hi,
Try the below code as reference of test method. It will cover 80% of your trigger:
@isTest
private class testTriggerinsert_Contact_ActivityTest
{
public static testMethod void unitTestinsert_Contact_Activity4Task()
{
Information_document_scan__c i=new Information_document_scan__c(name='test',Select_Form_Type__c='Signature Card');
insert i;
Attachment attachment = new Attachment(Name='An attachment',body=blob.valueof('b'),parentId=i.Id);
insert attachment;
}
}
Did this answer your question? If not, let me know what didn't work, or if so, please mark it solved.
Hi Jain,
Thanks For ur reply.
Still,it cover 65% only. It showing that,
" a.addError('Signature Card should have only Four attachments.To go back to record,Click "Done" Button');"
this line is not covered. How to do this? Do I want to write some more code for this "addError" line?
Hi,
Try the below modified code:
@isTest
private class testTriggerinsert_Contact_ActivityTest
{
public static testMethod void unitTestinsert_Contact_Activity4Task()
{
Information_document_scan__c i=new Information_document_scan__c(name='test',Select_Form_Type__c='Signature Card');
insert i;
Attachment attachment = new Attachment(Name='An attachment',body=blob.valueof('b'),parentId=i.Id);
try{
insert attachment;
}
catch(exception e)
{}
}
}