You need to sign in to do that
Don't have an account?
DevAccount
I am new to Salesforce. Help needed on writing test method
Hi,
I am new to Salesforce. Help needed on writing test method. mu current method covers 44% please help to get it 75%.
public with sharing class TallySheetItems {
private ApexPages.StandardController controller {get; set;}
//added an instance varaible for the standard controller
Tally_Sheet__c TS;
String recordId;
public TallySheetItems(ApexPages.StandardController stdController)
{
recordId = stdController.getId();
TS = (Tally_Sheet__c) stdController.getRecord();
this.controller=stdController;
}
List<TS_NASAAC_Item__c> TallySheetItemList;
List<TS_NASAAC_Item__c> TallySheetItemList1;
public double total { get; set; }
public PageReference reset() {
TallySheetItemList= [select ID, MELT__c, BND__c, GR_WT_KGS__c, Tare__c,
NET_WT_KGS__c, Melt_Date__c, INGOTS__c, Ref__c, IsDeleted__c from
TS_NASAAC_Item__c where Tally_Sheet_Ref__c = :TS.ID and IsDeleted__c = false order by CreatedDate limit 100 ];
return null;
}
public List<TS_NASAAC_Item__c> getTallySheetItems() {
if(TallySheetItemList== null) reset();
return TallySheetItemList;
}
public void setTallySheetItems(List<TS_NASAAC_Item__c> TallySheetItems) {
TallySheetItemList = TallySheetItems;
}
public PageReference saveItem() {
total = 0;
for(TS_NASAAC_Item__c o: TallySheetItemList)
{
if(o.GR_WT_KGS__c!= null)
{
total += o.GR_WT_KGS__c;
}
}
TS.TOTAL__c = total;
update TS;
upsert TallySheetItemList;
reset();
return null;
}
public PageReference add() {
TS_NASAAC_Item__c TSI = new TS_NASAAC_Item__c();
TSI.Tally_Sheet_Ref__c = TS.ID;
TallySheetItemList.add(TSI);
return null;
}
//string RowID;
//public String getRowID() {return this.RowID;}
//public List<TS_NASAAC_Item__c> TSIlst { get; set; }
//public PageReference DeleteRow()
//{
//string RowID = ApexPages.CurrentPage().getParameters().get('RowID');
//TallySheetItemDelList= [select ID, MELT__c, BND__c, GR_WT_KGS__c, Tare__c,
// NET_WT_KGS__c, Melt_Date__c, INGOTS__c, Ref__c from
// TS_NASAAC_Item__c where ID = :RowID limit 1];
// if ( TallySheetItemDelList.size() > 0 )
// {
// delete TallySheetItemDelList;
// }
// if for any reason we are missing the reference
//if (RowID == null)
//{
//return null; }
// find the account record within the collection
//TS_NASAAC_Item__c tobeDeleted = null;
//for(TS_NASAAC_Item__c a : TSIlst)
//if (a.Id == RowID)
//{
//tobeDeleted = a;
// break;
//}
//if account record found delete it
// if (tobeDeleted != null)
// { Delete tobeDeleted; }
//reset();
//delete TallySheetItemDelList;
// return null;
//}
public PageReference ExportExcel()
{
TS.Exported__c = true;
update TS;
PageReference customPage = Page.vfTallySheetExport;
customPage.setRedirect(true);
customPage.getParameters().put('id', recordId);
return customPage;
}
public string[] getheaders()
{
return new string [] {'Melt#', 'BND#', 'GR WT KGS', 'TARE', 'NET WT KGS', 'Melt Date', 'INGOTS', 'Ref#'} ;
}
public List<TS_NASAAC_Item__c> getTallySheetItems1() {
if(TallySheetItemList== null) reset1();
return TallySheetItemList;
}
public PageReference reset1() {
TallySheetItemList= [select MELT__c, BND__c, GR_WT_KGS__c, Tare__c,
NET_WT_KGS__c, Melt_Date__c, INGOTS__c, Ref__c from
TS_NASAAC_Item__c where Tally_Sheet_Ref__c = :TS.ID and IsDeleted__c = false order by CreatedDate limit 100 ];
return null;
}
public PageReference Completed() {
TS.Completed__c = true;
update TS;
return null;
}
/* Test Case */
static testMethod void myUnitTest() {
PageReference PageRef = Page.vfTallySheet;
test.setCurrentPage(PageRef);
Apexpages.Standardcontroller sc = new Apexpages.Standardcontroller(new Tally_Sheet__c());
List<TS_NASAAC_Item__c> TallySheetItemList;
List<TS_NASAAC_Item__c> TallySheetItemList1;
TallySheetItems controller = new TallySheetItems(sc);
controller.reset();
TallySheetItemList = null;
controller.getTallySheetItems();
TallySheetItemList= [select ID, MELT__c, BND__c, GR_WT_KGS__c, Tare__c,
NET_WT_KGS__c, Melt_Date__c, INGOTS__c, Ref__c, IsDeleted__c from
TS_NASAAC_Item__c where Tally_Sheet_Ref__c = 'a06T0000008OAyE' and IsDeleted__c = false order by CreatedDate limit 100 ];
controller.add();
controller.ExportExcel();
controller.getheaders();
controller.reset1();
controller.Completed();
controller.saveItem();
}
/* Test Case ends....*/
}
check which lines are not getting covered and modify accordingly.
Hi Krishnag,
sorry for the delayed reply..
I checked the line coverage and found the below red fonted were not covered, Please help to write test cases for the Upsert statement.