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
Venkatesh Ganta 16Venkatesh Ganta 16 

How to Do Code Coverage for Below one

Now the coverage is 15%

Controller : -
public class DS_Schedule_List {
    public class finalReturnList
    {
        public string region{get;set;}
        public List<deliveryDetails> detailsList{get;set;}
       
    }
    public class deliveryDetails
    {
        public integer sno{get;set;}
        public Decimal size360mtr{get;set;}
        public Decimal size300mtr{get;set;}
        public string partyName1{get;set;}
        public string partyName2{get;set;}
        Public string Region{get;set;}
        public String donum{get;set;}
        public String City{get;set;}
        public Date    Dodate{get;set;}
        public Decimal Freight{get;set;}
        public Decimal Meter{get;set;} 
        public Decimal Weight{get;set;}
        public Decimal Tonnes{get;set;}
        public string Transporter{get;set;}
        public Decimal size275mtr{get;set;}
        public Decimal size250mtr{get;set;}
        public Decimal size225mtr{get;set;}
        public Decimal size200mtr{get;set;}
        public Decimal size175mtr{get;set;}
        public Decimal size150mtr{get;set;}
        public Decimal size125mtr{get;set;}
        public Decimal size100mtr{get;set;}
        public Decimal size335mtr{get;set;}
        public Decimal size180mtr{get;set;}
        public Decimal sizeAR10{get;set;}
        public Decimal sizeAR2{get;set;}
        public Decimal sizeAR9{get;set;}
        public Decimal size15SC{get;set;}
        public String phoneNumberBuyer{get;set;}
        public String phoneNumberConsignee{get;set;}
        public String destinationAdd{get;set;}
    }
    
    public list<finalReturnList> finalReturnLists{get;set;}
   
    public Id getid{get;set;}
    public DS_Schedule_List(ApexPages.StandardController controller) 
    {
        
        
        getid=ApexPages.currentPage().getParameters().get('id');
        
        
        
        Map<string,List<deliveryDetails>> regionMap=new Map<string,List<deliveryDetails>>();
        //List<Delivery_Order__c> delOrderList=[Select Id,Name,Dispatch_Schedule__c,Name_Address_Of_Buyer__c,Name_Address_Of_Consignee__c,D_O_No__c,D_O_Date__c,Freight__c,District_for_DS_pdf__c,Weight__c,Destination_Address__c,Tonnes__c,Transporter__c,Total_Meters__c,Freights__c,Dealer_Name_for_DS__c,Distributor_Name_for_DS__c,Total_weight_Tonn_for_Metal__c,Region__c,(SELECT Id,Quantity_In_Number__c,Size__c,Products__r.Product_Specification__c,Name from ProductLineItems__r )  from Delivery_Order__c Where Status__c='Added to Dispatch Schedule'AND Dispatch_Schedule__c =:getid ORDER BY Region__c ASC];
         List<Delivery_Order__c> delOrderList=[Select Id,Name,Dispatch_Schedule__c,Name_Address_Of_Buyer__c,Name_Address_Of_Consignee__c,D_O_No__c,D_O_Date__c,Freight__c,District_for_DS_pdf__c,Weight__c,Destination_Address__c,
                                               Tonnes__c,Transporter__c,Total_Meters__c,Freights__c,Dealer_Name_for_DS__c,Distributor_Name_for_DS__c,Total_weight_Tonn_for_Metal__c,
                                               Region__c,From_Address__c,To_Address__c,Bill_To__c,Bill_to_If_Direct__c,Dealers__r.Phone__c,Dealers__r.Phone_2__c,Dealers__r.Distributor__r.Phone__c,Dealers__r.Distributor__r.Phone_2__c,
                                               Sub_Dealer__r.Phone__c,Sub_Dealer__r.Phone_2__c,Sub_Dealer__r.Dealer__r.Phone_2__c, Sub_Dealer__r.Dealer__r.Phone__c,
                                               DistributorNew__r.Phone__c,DistributorNew__r.Phone_2__c,City__c,Pincode__c,Consignee_City__c,(SELECT Id,Quantity_In_Number__c,Size__c,Products__r.Product_Specification__c,Name from ProductLineItems__r )  from Delivery_Order__c Where Status__c!='Pending' AND  Dispatch_Schedule__c =:getid ORDER BY Region__c ASC];
        if(!delOrderList.isEmpty())
        {
            integer i=1;
            for(Delivery_Order__c obj:delOrderList)
            {
                deliveryDetails dlvObj=new deliveryDetails();             
                dlvObj.partyName1='';
                if(String.isNotBlank(obj.Pincode__c) && (obj.Consignee_City__c!= obj.City__c))
                {
                    dlvObj.partyName1='('+ obj.City__c+' '+ obj.Pincode__c;
                }
                else if(String.isNotBlank(obj.Destination_Address__c))
                {
                     dlvObj.partyName1='('+obj.Destination_Address__c;
                }
            
                if(String.isNotBlank(obj.District_for_DS_pdf__c))
                {
                     dlvObj.partyName1= (String.isNotBlank(dlvObj.partyName1))?(dlvObj.partyName1 +'), ' +obj.District_for_DS_pdf__c):(dlvObj.partyName1 +')' +obj.District_for_DS_pdf__c);
                }
                if(String.isNotBlank(obj.Dealer_Name_for_DS__c))
                {
                     dlvObj.partyName1=(String.isNotBlank(dlvObj.partyName1))?(dlvObj.partyName1 +', ('+ obj.Dealer_Name_for_DS__c+')'):('('+dlvObj.partyName1 + obj.Dealer_Name_for_DS__c+')');
                }
                if(String.isNotBlank(obj.Distributor_Name_for_DS__c))
                {
                     dlvObj.partyName1=dlvObj.partyName1+' ('+ obj.Distributor_Name_for_DS__c+')';   
                }
                dlvObj.partyName2=obj.Distributor_Name_for_DS__c;
                dlvObj.Region = obj.District_for_DS_pdf__c;
                dlvObj.donum=obj.Name;
                dlvObj.dodate=obj.D_O_Date__c;
                dlvObj.Freight=obj.Freight__c;
                dlvObj.Meter=obj.Total_Meters__c;
                dlvObj.Weight=obj.Weight__c;
                dlvObj.Tonnes=obj.tonnes__c;
                dlvObj.transporter=obj.Transporter__c;
                dlvobj.City = obj.Destination_Address__c;
                for(Product_Line_Items__c objDL:obj.ProductLineItems__r)
                {
                    if(objDL.Products__r.Product_Specification__c=='3.60')
                    {
                        dlvObj.size360mtr=(dlvObj.size360mtr != null)?(dlvObj.size360mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='3.00')
                    {
                        dlvObj.size300mtr=(dlvObj.size300mtr != null)?(dlvObj.size300mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='2.75')
                    {
                        dlvObj.size275mtr=(dlvObj.size275mtr != null)?(dlvObj.size275mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='2.50')
                    {
                        dlvObj.size250mtr=(dlvObj.size250mtr != null)?(dlvObj.size250mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='2.25')
                    {
                        dlvObj.size225mtr=(dlvObj.size225mtr != null)?(dlvObj.size225mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='2.00')
                    {
                        dlvObj.size200mtr=(dlvObj.size200mtr != null)?(dlvObj.size200mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='1.75')
                    {
                        dlvObj.size175mtr=(dlvObj.size175mtr != null)?(dlvObj.size175mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='1.50')
                    {
                        dlvObj.size150mtr=(dlvObj.size150mtr != null)?(dlvObj.size150mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='1.25')
                    {
                        dlvObj.size125mtr=(dlvObj.size125mtr != null)?(dlvObj.size125mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='1.00')
                    {
                        dlvObj.size100mtr=(dlvObj.size100mtr != null)?(dlvObj.size100mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='3.35')
                    {
                        dlvObj.size335mtr=(dlvObj.size335mtr != null)?(dlvObj.size335mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='1.83')
                    {
                        dlvObj.size180mtr=(dlvObj.size180mtr != null)?(dlvObj.size180mtr + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='A.R.-10')
                    {
                        dlvObj.sizeAR10=(dlvObj.sizeAR10 != null)?(dlvObj.sizeAR10 + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='A.R.-2')
                    {
                        dlvObj.sizeAR2=(dlvObj.sizeAR2 != null)?(dlvObj.sizeAR2 + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ;
                    }
                    else if(objDL.Products__r.Product_Specification__c=='A.R.-9')
                    {
                        dlvObj.sizeAR9=(dlvObj.sizeAR9 != null)?(dlvObj.sizeAR9 + objDL.Quantity_In_Number__c):objDL.Quantity_In_Number__c ; 
                    }
                }             
               
                List<deliveryDetails> dlOrderList=new List<deliveryDetails>();
                if(regionMap.containsKey(obj.Region__c))
                {
                     i++;
                    dlvObj.sno=i;
                    dlOrderList=regionMap.get(obj.Region__c);
                    dlOrderList.add(dlvObj);
                    regionMap.put(obj.Region__c,dlOrderList);
                }
                else
                {
                    i=1;
                    dlvObj.sno=i;
                    dlOrderList.add(dlvObj);
                    regionMap.put(obj.Region__c,dlOrderList);
                }
            }
               
            List<finalReturnList> finalrtnList=new List<finalReturnList>();
            for(string obj:regionMap.keySet())
            {
                finalReturnList finalrtnObj=new finalReturnList();
                finalrtnObj.region=obj;
                finalrtnObj.detailsList=regionMap.get(obj);
                finalrtnList.add(finalrtnObj);
                finalReturnLists=finalrtnList;    
            }
        }
    }
    
}



Test class:- 


@isTest 
public class DS_Schedule_List_Test
{    
     @testSetup
     static void setTestData(){
       Dispatch_Schedule__c dispatch = new Dispatch_Schedule__c();
       
       Product__c prod = new Product__c ();
       Product_Line_Items__c prodlnitem = new Product_Line_Items__c();
       List<Product_Line_Items__c> prodlnitemList = new List<Product_Line_Items__c>();
       dispatch.Name='Dispatch Name';
       dispatch.Status__c='pending';
     
       insert dispatch;
          Dealer__c dlr = new Dealer__c();
      dlr.Name = 'Test Dealer';
        dlr.Phone__c = '123456789';
        dlr.Pincode__c = '234567';
        dlr.Address1__c = 'test address 1';
        dlr.GSTN__c = '29AAACC1206D2ZB';
        dlr.Region__c = 'Bihar';
        dlr.District__c = 'Bhojpur';
        dlr.City__c = 'CHARKHI DADRI';
        dlr.Commission_Rate__c = 23.23;
        dlr.PAN__c = 'CDJNS7339L';
        dlr.Whatsapp_Number2__c = '9876456789';
        dlr.Whatsapp_Number__c  ='3434543456';
        dlr.Latitude__c = 77.2342344;
        dlr.Longitude__c = 98.7876787;
        dlr.TCS_Required__c = 'yes';
        dlr.Status__c = 'Approved';
         insert dlr;
     Delivery_Order__c dlrodr = new Delivery_Order__c();
        dlrodr.Pincode__c= '123233';
        dlrodr.From_Address__c = 'Jaipur-302016';
        dlrodr.To_Address__c=' 6702713';
        dlrodr.Date_Of_Delivery__c = system.today();
        dlrodr.Status__c = 'Added to Dispatch Schedule';
        dlrodr.GST__c = '24AAACC1206D1ZM';
        dlrodr.Dispatch_Schedule__c=dispatch.id;
        dlrodr.Bill_To__c = 'Direct';
        dlrodr.Bill_to_If_Direct__c = 'Dealer';
        dlrodr.Dealers__c = dlr.Id;
        insert dlrodr;
       
        prod.Name='A.C. Sheet (3.0 M) (Haryana)';
        prod.Unit__c='Meter';
        prod.Size__c = 3;
        prod.Product_Type__c = 'A.C. Sheet';
        prod.Weight__c = 5;
        prod.Product_Specification__c ='3.00';
        insert prod;
        

       Price_List__c Plist = new Price_List__c();
         Plist.Name = 'A.C. Sheet (3.0 M) (Haryana)';
         Plist.Unit_Price__c = 150;
         plist.Product_Specification__c ='3';
         plist.Region__c = 'Rajasthan';
         Plist.Product__c = prod.id;
         insert Plist;
         
  
       
        Product_Line_Items__c prodlnitem1 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='2.0 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem1);
        Product_Line_Items__c prodlnitem2 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='2.75 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem2);
        Product_Line_Items__c prodlnitem3 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='3.0 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem3);
        Product_Line_Items__c prodlnitem4 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='2.25 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem4);
        Product_Line_Items__c prodlnitem5 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='3.6 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem5);   
        Product_Line_Items__c prodlnitem6 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='2.5 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem6);
        Product_Line_Items__c prodlnitem7 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='1.75 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem7);
        Product_Line_Items__c prodlnitem8 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='1.5 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem8);
        Product_Line_Items__c prodlnitem9 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='1.25 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem9);
        Product_Line_Items__c prodlnitem10 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='1.80 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem10);   
        Product_Line_Items__c prodlnitem11 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='1.0 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem11);
        Product_Line_Items__c prodlnitem12 = new Product_Line_Items__c(Delivery_Order__c=dlrodr.id,Products__c=prod.id,Price_List__c=Plist.id,Quantity_In_Number__c=1,Size__c ='2.0 MTR',Product_Type__c ='A.C. Sheet'); prodlnitemList.add(prodlnitem12);
      
       // prodlnitem.Name='3.6 MTR';
        prodlnitem.Delivery_Order__c=dlrodr.id; 
        prodlnitem.Products__c=prod.id;
        prodlnitem.Quantity_In_Number__c=12;
        prodlnitemList.add(prodlnitem);
         
      
        insert prodlnitemList;
     }
     @isTest
     static void DispatchControllerTest(){
       
          
         //Delivery_Order__c delivery =[Select Id,Name,Dispatch_Schedule__c,Region__c,(SELECT Id,Quantity_In_Number__c,Size__c,Products__r.Product_Specification__c,Name from ProductLineItems__r )  from Delivery_Order__c Where Id =:Dispatch_Schedule__c.id];
         Dispatch_Schedule__c dispatch = [select id, Name, Status__c from Dispatch_Schedule__c where Name = : 'Dispatch Name'];
             ApexPages.StandardController sc = new ApexPages.StandardController(dispatch);
           DS_Schedule_List dispatchschedule = new DS_Schedule_List(sc);
            
             PageReference pageRef = Page.DS_Schedule_List; // Add your VF page Name here
          //  pageRef.getParameters().put('getid', dlrodr.id);
            Test.setCurrentPage(pageRef);    
     }     
}
AbhinavAbhinav (Salesforce Developers) 
Check this:

https://salesforce.stackexchange.com/questions/244788/how-do-i-write-an-apex-unit-test

https://salesforce.stackexchange.com/questions/244794/how-do-i-increase-my-code-coverage-or-why-cant-i-cover-these-lines

.Thanks!