public class AccountTriggerHandler {
public static void CreateAccounts(List<Account> accList) {
for(Account acc : accList) {
if(acc.ShippingState != acc.BillingState) {
acc.ShippingState = acc.BillingState;
}
}
}
}
Account Trigger
trigger AccountTrigger on Account (before insert) {
if(Trigger.isBefore && Trigger.isInsert) {
AccountTriggerHandler.CreateAccounts(Trigger.New);
}
}
AccountTriggerTest
@isTest
public class AccountTriggerTest {
@isTest static void createAccounts() {
List<Account> accList = new List<Account>();
for(Integer i=0;i<200;i++) {
Account acc = new Account();
acc.Name = 'Test Account '+i;
acc.First_Name__c = 'Acc FName '+i;
acc.Last_Name__c = 'Acc LName '+i;
acc.BillingState = 'CA';
accList.add(acc);
}
Test.startTest();
insert accList;
Test.stopTest();
List<Account> verifyAccList = [SELECT Id, ShippingState FROM Account];
for(Account acc : verifyAccList) {
System.assertEquals('CA', acc.ShippingState);
}
}
}
Hi All, I'm getting the following error - The 'AccountTrigger' trigger isn't working correctly. Make sure that the trigger inserts Account records with matching BillingState and ShippingState values, What could be the reason for this issue?
Try deactivating all other account triggers! Specially if you are like me and use the same org for every challenge.