You need to sign in to do that
Don't have an account?
DevAccount
Help needed on writing test method.
Hi,
Help needed on writing test method.
I checked the line coverage and found the below red fonted were not covered, Please help to write test cases for the Upsert statement.
public with sharing class TallySheetItems {
private ApexPages.StandardController controller {get; set;}
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;
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, IsDelete d__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 PageReference saveItem()
{
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;
}
/* Test Case */
static testMethod void myUnitTest() {
PageReference PageRef = Page.vfTallySheet;
test.setCurrentPage(PageRef);
Apexpages.Standardcontroller sc = new Apexpages.Standardcontroller(new Tally_Sheet__c());
TallySheetItems controller = new TallySheetItems(sc);
controller.getTallySheetItems();
controller.reset();
controller.add();
controller.saveItem();
}
/* Test Case ends....*/
}
Any help would certainly appreciated.
Thanks
Dev
insert some dummy data in the folloeing table TS_NASAAC_Item__c and query it in yours test method it will improve.
As per your suggestion, I added the dummy data into my testMethod as below green fonted but it still not covering the upsert.. Let me know, where am I going wrong
Just curious, is the method "saveItem()" get executed at all? There maybe exception in "add()" that prevent "saveItem()" from executing.
Probably adding "system.debug" statement or "system.assert" calls in your method would help narrow down the issue.