Test Coverage for DataBase.Error

1,260 views
Skip to first unread message

Krishna Prabhakar

unread,
Dec 14, 2010, 7:37:55 PM12/14/10
to salesforce-p...@googlegroups.com
hi friends,

I am trying to write a test method for a class where i have DataBase.Error which is not getting covered.Can anyone help me to make this coverage successful. How can i make this DataBase.Error to be covered.

Class Code:

global class SystemUtility {
public static String getErrorString(List<Database.Saveresult> saveResult){
String error='';
for(Database.Saveresult result : saveResult){
if(!result.isSuccess()){

for(Database.Error err : result.getErrors()){
error+=err;

}
return error;
}
}
return error;
}
}
Test Class:

@isTest
private class SystemUtilityTest {

static testMethod void myUnitTest() {

Territory ter = new Territory(name = 'testterr1',Geo__c = 'AMS' ,Super_Org__c ='CA_SO', Organization__c = 'CANADA_FIELD', Region__c = 'CANADA', Area__c = 'CA_ENTERPRISE_1', District_Team__c = 'CA_DISTRICT_1', Sector_Vertical__c = 'HEALTHCARE', Segment__c = 'COMMERCIAL', Territory_Type__c = 'HEALTHCARE_ISV_TERRITORY', Active_Flag__c = 'Active', Fiscal_Year__c = 'Old', Open_Territory__c = false , Effective_Start_Date__c = System.today(), Effective_End_Date__c = null, Business_Reason__c = 'Test Purpose', Quota_Bearing__c = true , OIC_Territory_Flag__c = false );
List<Territory> terrs = new List<Territory>();
terrs.add(ter);

Profile prof =[select id from profile where name = 'Master GCM Administrator'];
User us = [select id,profileId from user where profileId =:prof.Id and IsActive = true LIMIT 1];

// Run as Master GCM Administrator
System.runAs(us){

// Start the Test
Test.startTest();

List<Database.Saveresult> res = Database.Insert(terrs);
String errorStr = SystemUtility.getErrorString(res);

//Stop the Test
Test.stoptest();

}
}
}
Thanks,
Krishna Prabhakar.
Reply all
Reply to author
Forward
0 new messages