You need to sign in to do that
Don't have an account?
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