ads

Wednesday 29 August 2018

Cover addError() in trigger in Apex Test

Sample Trigger:


trigger RestrictAccountByName on 
Account(before insert, before update) {
    
    for (
Account Acc : Trigger.New) {
        if(Acc.Name == 'INVALIDNAME') {   //invalidname is invalid
            Acc.AddError('The Account Name "'+Acc.Name+'" is not allowed for DML');
        }
    }
}

Sample Test Class:

@isTest
private class RestrictAccountByName {
    @isTest static void test() {
        
Account Acc = new Account(Name = 'INVALIDNAME');
        Database.SaveResult result = Database.insert(Acc, false);
        System.assertEquals('The  Name "'+Acc.Name+'" is not allowed for DML',result.getErrors()[0].getMessage());
    }
}

No comments:

Post a Comment