You need to sign in to do that
Don't have an account?
Venkatesh Ganta 16
How to Cover code coverage for the below Class
Controller :-
public class DOPdf
{
public class productItemList
{
public string styleStr{get;set;}
public string styleHead{get;set;}
public List<Product_Line_Items__c> proItemList{get;set;}
}
public list<Delivery_Order__c> delordr{get;set;}
public Id getid{get;set;}
public String phoneNumberBuyer{get;set;}
public String phoneNumberConsignee{get;set;}
public String destinationAdd{get;set;}
public List<productItemList> finalProductLineItemList{get;set;}
public DOPdf(ApexPages.StandardController controller)
{
getid=ApexPages.currentPage().getParameters().get('id');
delordr=[Select 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,Destination_Address__c,Consignee_City__c from Delivery_Order__c where Id=:getid ORDER BY CreatedDate];
if(delordr.size() > 0)
{
List<Product_Line_Items__c> itemList=[SELECT Id,Price_List__r.Print_Name__c,Length_in_Feet__c,Quantity_In_Number__c,Meters__c,Total_Feet__c,Price_List__r.Unit_Price__c,Amount__c,Delivery_Order__c FROM Product_Line_Items__c WHERE Delivery_Order__c=:getid];
if(!itemList.isEmpty())
{
List<productItemList> pOList=new List<productItemList>();
if(itemList.size()<=6)
{
productItemList pObj=new productItemList();
pObj.proItemList=itemList;
pObj.styleStr='display:inline-block';
pObj.styleHead='page-break-after:avoid;';
pOList.add(pObj);
finalProductLineItemList=pOList;
}
else
{
integer i=1;
integer j=1;
List<Product_Line_Items__c> lineIList=new List<Product_Line_Items__c>();
for(Product_Line_Items__c obj:itemList)
{
System.debug('i value='+i);
if(i==6)
{
lineIList.add(obj);
List<Product_Line_Items__c> lineIListCopy=new List<Product_Line_Items__c>();
lineIListCopy=lineIList.clone();
productItemList pObj=new productItemList();
pObj.proItemList=lineIListCopy;
pObj.styleStr='display:none';
pObj.styleHead='page-break-after:always;';
pOList.add(pObj);
lineIList.clear();
i=1;
}
else if(j==itemList.size())
{
lineIList.add(obj);
productItemList pObj=new productItemList();
pObj.proItemList=lineIList;
pObj.styleStr='display:inline-block';
pObj.styleHead='page-break-after:avoid;';
pOList.add(pObj);
}
else
{
lineIList.add(obj);
i++;
}
j++;
}
finalProductLineItemList=pOList;
}
}
system.debug('finalProductLineItemList= '+finalProductLineItemList.size());
if(String.isNotBlank(delordr[0].Pincode__c) && (delordr[0].Consignee_City__c!= delordr[0].City__c))
{
destinationAdd= delordr[0].City__c+' - '+ delordr[0].Pincode__c;
}
else
{
destinationAdd= delordr[0].Destination_Address__c;
}
If(delordr[0].Bill_To__c == 'Dealer')
{
phoneNumberConsignee=delordr[0].Dealers__r.Phone__c ;
if(String.isNotBlank(delordr[0].Dealers__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+delordr[0].Dealers__r.Phone_2__c;
}
phoneNumberBuyer=delordr[0].Dealers__r.Distributor__r.Phone__c;
if(String.isNotBlank(delordr[0].Dealers__r.Distributor__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+ delordr[0].Dealers__r.Distributor__r.Phone_2__c;
}
}
else If(delordr[0].Bill_To__c == 'Sub-Dealer')
{
phoneNumberConsignee=delordr[0].Sub_Dealer__r.Phone__c;
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+ delordr[0].Sub_Dealer__r.Phone_2__c;
}
phoneNumberBuyer = delordr[0].Sub_Dealer__r.Dealer__r.Phone__c ;
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Dealer__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].Sub_Dealer__r.Dealer__r.Phone_2__c;
}
}
else if(delordr[0].Bill_To__c == 'Direct' )
{
if(delordr[0].Bill_to_If_Direct__c == 'Dealer')
{
phoneNumberConsignee= delordr[0].Dealers__r.Phone__c ;
phoneNumberBuyer= delordr[0].Dealers__r.Phone__c ;
if(String.isNotBlank(delordr[0].Dealers__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+ delordr[0].Dealers__r.Phone_2__c;
}
if(String.isNotBlank(delordr[0].Dealers__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].Dealers__r.Phone_2__c;
}
}
else if(delordr[0].Bill_to_If_Direct__c == 'Sub Dealer')
{
phoneNumberConsignee = delordr[0].Sub_Dealer__r.Phone__c ;
phoneNumberBuyer = delordr[0].Sub_Dealer__r.Phone__c ;
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+ delordr[0].Sub_Dealer__r.Phone_2__c;
}
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].Sub_Dealer__r.Phone_2__c;
}
}
else if(delordr[0].Bill_to_If_Direct__c =='Distributor')
{
phoneNumberConsignee = delordr[0].DistributorNew__r.Phone__c ;
phoneNumberBuyer = delordr[0].DistributorNew__r.Phone__c;
if(String.isNotBlank(delordr[0].DistributorNew__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+delordr[0].DistributorNew__r.Phone_2__c;
}
if(String.isNotBlank(delordr[0].DistributorNew__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].DistributorNew__r.Phone_2__c;
}
}
}
}
}
}
Test Class:-
@isTest
public class DoPdfTest
{
static testMethod void Dopdf()
{
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';
Sub_Dealer__c sdlf = new Sub_Dealer__c();
sdlf.title__c ='Mr';
sdlf.Name = 'Test subdealer';
sdlf.Region__c = 'Bihar';
sdlf.GSTN__c = '29AAACC1206D2ZV';
sdlf.PAN__c = 'CDJNS7339H';
sdlf.Whatsapp_Number2__c = '9876456799';
sdlf.Whatsapp_Number__c ='3434543476';
sdlf.Phone__c = '1234567870';
sdlf.Pincode__c = '234587';
sdlf.TCS_Required__c ='yes';
sdlf.Status__c = 'Approved';
Distributor__c dbr = new Distributor__c();
dbr.title__c = 'Mr';
dbr.Name = 'Test Distributor';
dbr.Region__c ='Bihar';
dbr.GSTN__c = '29AAACC1606D2ZV';
dbr.PAN_Number__c = 'HDJNS7339H';
dbr.Whatsapp_Number2__c = '9876456999';
dbr.Whatsapp_Number__c ='3434547476';
dbr.Phone__c = '1234568870';
dbr.Pincode__c = '234577';
dbr.TCS_Required__c ='yes';
dbr.Status__c = 'Approved';
insert dlr;
insert sdlf;
insert dbr;
Delivery_Order__c dlrodr = new Delivery_Order__c();
dlrodr.From_Address__c = 'Jaipur-302016';
dlrodr.To_Address__c='FAX : 6702713';
dlrodr.Date_Of_Delivery__c = system.today();
dlrodr.GST__c = '24AAACC1206D1ZM';
dlrodr.Pincode__c = '666777';
dlrodr.City__c = 'Hyderabad';
dlrodr.Bill_To__c = 'Direct';
dlrodr.Bill_to_If_Direct__c = 'Dealer';
dlrodr.Dealers__c = dlr.Id;
insert dlrodr;
Test.StartTest();
Delivery_Order__c doorder =[Select id,Name,City__c,Pincode__c,Destination_Address__c From Delivery_Order__c Where Id = :dlrodr.Id ];
ApexPages.StandardController sc = new ApexPages.StandardController(doorder);
dopdf dopdf1 = new dopdf(sc);
PageReference pageRef = Page.DO_PDF; // Add your VF page Name here
pageRef.getParameters().put('getid', doorder.id);
Test.setCurrentPage(pageRef);
Test.StopTest();
}
}
public class DOPdf
{
public class productItemList
{
public string styleStr{get;set;}
public string styleHead{get;set;}
public List<Product_Line_Items__c> proItemList{get;set;}
}
public list<Delivery_Order__c> delordr{get;set;}
public Id getid{get;set;}
public String phoneNumberBuyer{get;set;}
public String phoneNumberConsignee{get;set;}
public String destinationAdd{get;set;}
public List<productItemList> finalProductLineItemList{get;set;}
public DOPdf(ApexPages.StandardController controller)
{
getid=ApexPages.currentPage().getParameters().get('id');
delordr=[Select 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,Destination_Address__c,Consignee_City__c from Delivery_Order__c where Id=:getid ORDER BY CreatedDate];
if(delordr.size() > 0)
{
List<Product_Line_Items__c> itemList=[SELECT Id,Price_List__r.Print_Name__c,Length_in_Feet__c,Quantity_In_Number__c,Meters__c,Total_Feet__c,Price_List__r.Unit_Price__c,Amount__c,Delivery_Order__c FROM Product_Line_Items__c WHERE Delivery_Order__c=:getid];
if(!itemList.isEmpty())
{
List<productItemList> pOList=new List<productItemList>();
if(itemList.size()<=6)
{
productItemList pObj=new productItemList();
pObj.proItemList=itemList;
pObj.styleStr='display:inline-block';
pObj.styleHead='page-break-after:avoid;';
pOList.add(pObj);
finalProductLineItemList=pOList;
}
else
{
integer i=1;
integer j=1;
List<Product_Line_Items__c> lineIList=new List<Product_Line_Items__c>();
for(Product_Line_Items__c obj:itemList)
{
System.debug('i value='+i);
if(i==6)
{
lineIList.add(obj);
List<Product_Line_Items__c> lineIListCopy=new List<Product_Line_Items__c>();
lineIListCopy=lineIList.clone();
productItemList pObj=new productItemList();
pObj.proItemList=lineIListCopy;
pObj.styleStr='display:none';
pObj.styleHead='page-break-after:always;';
pOList.add(pObj);
lineIList.clear();
i=1;
}
else if(j==itemList.size())
{
lineIList.add(obj);
productItemList pObj=new productItemList();
pObj.proItemList=lineIList;
pObj.styleStr='display:inline-block';
pObj.styleHead='page-break-after:avoid;';
pOList.add(pObj);
}
else
{
lineIList.add(obj);
i++;
}
j++;
}
finalProductLineItemList=pOList;
}
}
system.debug('finalProductLineItemList= '+finalProductLineItemList.size());
if(String.isNotBlank(delordr[0].Pincode__c) && (delordr[0].Consignee_City__c!= delordr[0].City__c))
{
destinationAdd= delordr[0].City__c+' - '+ delordr[0].Pincode__c;
}
else
{
destinationAdd= delordr[0].Destination_Address__c;
}
If(delordr[0].Bill_To__c == 'Dealer')
{
phoneNumberConsignee=delordr[0].Dealers__r.Phone__c ;
if(String.isNotBlank(delordr[0].Dealers__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+delordr[0].Dealers__r.Phone_2__c;
}
phoneNumberBuyer=delordr[0].Dealers__r.Distributor__r.Phone__c;
if(String.isNotBlank(delordr[0].Dealers__r.Distributor__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+ delordr[0].Dealers__r.Distributor__r.Phone_2__c;
}
}
else If(delordr[0].Bill_To__c == 'Sub-Dealer')
{
phoneNumberConsignee=delordr[0].Sub_Dealer__r.Phone__c;
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+ delordr[0].Sub_Dealer__r.Phone_2__c;
}
phoneNumberBuyer = delordr[0].Sub_Dealer__r.Dealer__r.Phone__c ;
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Dealer__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].Sub_Dealer__r.Dealer__r.Phone_2__c;
}
}
else if(delordr[0].Bill_To__c == 'Direct' )
{
if(delordr[0].Bill_to_If_Direct__c == 'Dealer')
{
phoneNumberConsignee= delordr[0].Dealers__r.Phone__c ;
phoneNumberBuyer= delordr[0].Dealers__r.Phone__c ;
if(String.isNotBlank(delordr[0].Dealers__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+ delordr[0].Dealers__r.Phone_2__c;
}
if(String.isNotBlank(delordr[0].Dealers__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].Dealers__r.Phone_2__c;
}
}
else if(delordr[0].Bill_to_If_Direct__c == 'Sub Dealer')
{
phoneNumberConsignee = delordr[0].Sub_Dealer__r.Phone__c ;
phoneNumberBuyer = delordr[0].Sub_Dealer__r.Phone__c ;
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+ delordr[0].Sub_Dealer__r.Phone_2__c;
}
if(String.isNotBlank(delordr[0].Sub_Dealer__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].Sub_Dealer__r.Phone_2__c;
}
}
else if(delordr[0].Bill_to_If_Direct__c =='Distributor')
{
phoneNumberConsignee = delordr[0].DistributorNew__r.Phone__c ;
phoneNumberBuyer = delordr[0].DistributorNew__r.Phone__c;
if(String.isNotBlank(delordr[0].DistributorNew__r.Phone_2__c))
{
phoneNumberConsignee= phoneNumberConsignee+','+delordr[0].DistributorNew__r.Phone_2__c;
}
if(String.isNotBlank(delordr[0].DistributorNew__r.Phone_2__c))
{
phoneNumberBuyer= phoneNumberBuyer+','+delordr[0].DistributorNew__r.Phone_2__c;
}
}
}
}
}
}
Test Class:-
@isTest
public class DoPdfTest
{
static testMethod void Dopdf()
{
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';
Sub_Dealer__c sdlf = new Sub_Dealer__c();
sdlf.title__c ='Mr';
sdlf.Name = 'Test subdealer';
sdlf.Region__c = 'Bihar';
sdlf.GSTN__c = '29AAACC1206D2ZV';
sdlf.PAN__c = 'CDJNS7339H';
sdlf.Whatsapp_Number2__c = '9876456799';
sdlf.Whatsapp_Number__c ='3434543476';
sdlf.Phone__c = '1234567870';
sdlf.Pincode__c = '234587';
sdlf.TCS_Required__c ='yes';
sdlf.Status__c = 'Approved';
Distributor__c dbr = new Distributor__c();
dbr.title__c = 'Mr';
dbr.Name = 'Test Distributor';
dbr.Region__c ='Bihar';
dbr.GSTN__c = '29AAACC1606D2ZV';
dbr.PAN_Number__c = 'HDJNS7339H';
dbr.Whatsapp_Number2__c = '9876456999';
dbr.Whatsapp_Number__c ='3434547476';
dbr.Phone__c = '1234568870';
dbr.Pincode__c = '234577';
dbr.TCS_Required__c ='yes';
dbr.Status__c = 'Approved';
insert dlr;
insert sdlf;
insert dbr;
Delivery_Order__c dlrodr = new Delivery_Order__c();
dlrodr.From_Address__c = 'Jaipur-302016';
dlrodr.To_Address__c='FAX : 6702713';
dlrodr.Date_Of_Delivery__c = system.today();
dlrodr.GST__c = '24AAACC1206D1ZM';
dlrodr.Pincode__c = '666777';
dlrodr.City__c = 'Hyderabad';
dlrodr.Bill_To__c = 'Direct';
dlrodr.Bill_to_If_Direct__c = 'Dealer';
dlrodr.Dealers__c = dlr.Id;
insert dlrodr;
Test.StartTest();
Delivery_Order__c doorder =[Select id,Name,City__c,Pincode__c,Destination_Address__c From Delivery_Order__c Where Id = :dlrodr.Id ];
ApexPages.StandardController sc = new ApexPages.StandardController(doorder);
dopdf dopdf1 = new dopdf(sc);
PageReference pageRef = Page.DO_PDF; // Add your VF page Name here
pageRef.getParameters().put('getid', doorder.id);
Test.setCurrentPage(pageRef);
Test.StopTest();
}
}
Try Below Code
If Dealer Object And Distributor Object Have Any Parent Child lookup Please Fill Up Please Mark It As Best Answer If It Helps
Thank You!