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
ShrutiiShrutii 

Test class for helper class

I need help to write test class for below class? Its urgent

public class TriggerHelper {
 
    public static void validateInFavourOf(List<Disbursement__c> newList){
        if(Trigger.isBefore){
            Set<Id> setCustDetail = new Set<Id>();
            Map<Id, Loan_Contact__c> mapCustDetail; 
            for(Disbursement__c disb : newList){
                if(disb.Customer_Detail__c != null){
                  setCustDetail.add(disb.Customer_Detail__c);    
                }
            }
            If(!setCustDetail.isEmpty()){
              mapCustDetail = new Map<Id,Loan_Contact__c>([SELECT Id, customer_name__c FROM Loan_Contact__c WHERE Id IN : setCustDetail]);    
            }
            
            for(Disbursement__c disb : newList){
                if(disb.Cheque_Favouring__c == null && disb.Customer_Detail__c != null){
                    if(mapCustDetail.containsKey(disb.Customer_Detail__c)){
                      System.debug('Favouring value : ' + mapCustDetail.get(disb.Customer_Detail__c).customer_name__c);
                      disb.Cheque_Favouring__c = mapCustDetail.get(disb.Customer_Detail__c).customer_name__c;    
                    }
                    else{
                        disb.addError('No such Customer found');
                    }
                }
                else if(disb.Cheque_Favouring__c != null && disb.Customer_Detail__c != null){
                    if(disb.Cheque_Favouring__c != disb.Customer_Detail__r.customer_name__c){
                        disb.addError('Customer Name do not match for Cheque Favouring');
                    }
                }
                else if(disb.Customer_Detail__c == null && disb.Cheque_Favouring__c == null){
                    disb.addError('Please provide value for Cheque Favouring either in Favoring Customer Name or Favouring');
                }
            }
        }
    }    
}
Sujeet PatelSujeet Patel
I written the test class for your helperclass.i hope this will help full for you.
@isTest
public class helperTest
{
	@isTest
	public static void test()
	{
		Disbursement__c d=new Disbursement__c();
		d.Customer_Detail__c='test';
		d.Cheque_Favouring__c='test';
		insert d;
		
		
		Disbursement__c d1=new Disbursement__c();
		d.Customer_Detail__c='test1';
		d.Cheque_Favouring__c='test1';
		insert d1;
		
		
		Loan_Contact__c l=new Loan_Contact__c();
		l.customer_name__c='demotest';
		insert l;
			
		
		List<Disbursement__c> ls=new List<Disbursement__c>();
		ls.add(d);
		ls.add(d1);	
		
		TriggerHelper.validateInFavourOf(ls);
	
	}
	
	public static void test2()
	{
		helperTest.test();
	
	}

}