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
roshrosh 

Test class? Please help me for this test class?

public class VConnect_retailersTriggerHandler {
    public static void preventDeleteRetailer(List<Target_Retailer__c> triggerOld) {
        for(Target_Retailer__c tar_Retailer : triggerOld){
            if(tar_Retailer.VConnect_Survey_Status__c =='Published' || tar_Retailer.VConnect_Survey_Status__c =='Inactive'){
                tar_Retailer.addError('Reatilers can not be deleted of published/Inactive Survey');  
            }
        }   
    }
Sai PraveenSai Praveen (Salesforce Developers) 
Hi Rosh,

Can you share the trigger for this handler so can share the test class to cover both.

Thanks,

 
Sai PraveenSai Praveen (Salesforce Developers) 
Hi,

The test class can be as below. This should cover 100% of your code
 
@isTest 
private class VConnect_retailersTriggerHandlerTest {    
     @isTest static void test() {     
        Target_Retailer__c acc = new Target_Retailer__c(Name = 'sample',VConnect_Survey_Status__c='Inactive');   
        insert acc;     
        try
        {
            delete  acc;       
        }
        catch(Exception ex)
        {
            Boolean expectedExceptionThrown =  ex.getMessage().contains('Reatilers can not be deleted of published/Inactive Survey') ? true : false;
            System.AssertNotEquals(expectedExceptionThrown,true);
            //System.Assert(ex.getMessage().contains('You Do not have the Permission to Delete the Email'));
        }
          
               } 
            }

Make sure you give all the required fields while creating Target_Retailer__c records. I just gave Name and status fields only as I am not sure which fields were required.

Let me know if you face any issues.

If this solution helps, Please mark it as best answer.

Thanks,
roshrosh
trigger VConnect_retailersTrigger on Target_Retailer__c (Before Delete) {
    
    VA_Trigger_Settings__c objTriggerSetting = VA_Trigger_Settings__c.getValues('RetailersTrigger');
    if(objTriggerSetting.VA_Is_Trigger_Disabled__c) {
        return;
    }
    
    if(trigger.isDelete && trigger.isBefore){
        VConnect_retailersTriggerHandler.preventDeleteRetailer(trigger.old);
    }
}