function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
hamshuhamshu 

Test Class Code Coverage for Add Error Method


HI all,


trigger DuplicateEmail on contact( before insert, before update) {
    Map<String, contact> contactMap = new Map<String, contact>();
      for (contact contact: System.Trigger.new) {
        if ((contact.Email!= null) &&
                  (System.Trigger.isInsert ||
                  (contact.Email!=
                      System.Trigger.oldMap.get(contact.Id).Email ))) {
      if (contactMap.containsKey(contact.Email )) {
                  contact.Email.addError('same email.');
              } else {
                  contactMap .put(contact.Email , contact);     
                           }
        }
      }
       for (contact contact: [SELECT Email  FROM contact WHERE Email IN :contactMap.KeySet()])
      {
          contact newcontact  = contactMap .get(contact.Email );
          newcontact.Email.addError('Email is already exhists with another contact ');
      }
  }

 

Not able to test Following lines...

 

My TEst Class:

@istest
public class testcontactemail
{
    public static testmethod void testemail()
    {
        account acc=new account();
        acc.name='test account';
        acc.Lead_Source__c='Website';
        insert acc;
        
        contact con=new contact();
        con.email='jabaraj.jaba@gmail.com';
        con.lastname='raj';
        con.accountid=acc.id;
        
        Exception e;
        
     /*   contact con1=new contact();
        con1.email='jabaraj.jaba@gmail.com';
        con1.lastname='raj';
        con1.accountid=acc.id;*/
        
        try
        {
            insert con;
        }
        catch(Exception ex)
        {
            e = ex;
          //  System.assert(e instanceOf System.DMLException);
        //    System.assert(e.getMessage().contains('FIELD_CUSTOM_VALIDATION_EXCEPTION'));
          System.assert(e.getMessage().contains('Record already exist with same email Id'));
          //  System.assert(false);
             
        }
      }

 

 

Thanks in Advance

Sneha PatilSneha Patil
 public static testmethod void testemail()
    {
        account acc=new account();
        acc.name='test account';
        acc.Lead_Source__c='Website';
        insert acc;
        
        contact con=new contact();
        con.email='jabaraj.jaba@gmail.com';
        con.lastname='raj';
        con.accountid=acc.id;
        
             
     con1.email='jabaraj.jaba@gmail.com';
        con1.lastname='raj';
        con1.accountid=acc.id;

try{
 insert con;
}
catch(Exception ex)
{
//Assert Status Code
System.assertEquals('FIELD_CUSTOM_VALIDATION_EXCEPTION' , e.getDmlStatusCode(0) );
 System.assert(e.getMessage().contains('Email is already exhists with another contact'));
}