salesforce - Apex Test Class - How to set a rollup count field in a test class -



salesforce - Apex Test Class - How to set a rollup count field in a test class -

trying set value roll summary field in test class improve code coverage. how do it?

public class clspreferrediasetext { list<preferredia__c> preferredias; public static preferredia__c[] tobeclosed = new preferredia__c[0]; public static preferredia__c[] newpreias = new preferredia__c[0]; public static preferredia__c loopadd; public static preferredcontact__c[] contactlists = new preferredcontact__c[0]; public static account[] invoicedaccounts = new account[0]; public static preferredia__c[] monkey; public clspreferrediasetext(apexpages.standardsetcontroller controller) { preferredias = (list<preferredia__c>) controller.getselected(); } public void getinitcloseinv() { tobeclosed = [select id, account__c, account__r.id, account__r.name, account__r.accountnumber, specialist__c, preferredinvoice__c, status__c preferredia__c status__c = 'invoiced' limit 150]; list<string> testme = new list<string>{}; for(preferredia__c a:tobeclosed) { testme.add(a.account__r.id); } invoicedaccounts = [select id, eligibleias__c, preferredoverride__c, preferred_territory__r.rep__c, lastsurveydate__c, initialinspectioncomplete__c, program_level__c, preferredexempt__c, account_status__c, active_ias__c, last_training__c business relationship id in :testme]; contactlists = [select id, account__c preferredcontact__c account__c in :testme]; for(preferredia__c q:tobeclosed) { q.status__c = 'closed'; } for(account z:invoicedaccounts) { /**************************************************************** next status trying set z.eligibleias__c roll count field of preferredia__c objects associated account. ****************************************************************/ if(z.eligibleias__c == 0 && z.program_level__c == 'preferred' && !z.preferredexempt__c && (z.account_status__c == 'active' || z.account_status__c == 'product only')) { loopadd = new preferredia__c(); system.debug(z.id); system.debug(z.account_status__c); loopadd.account__c = z.id; if(z.preferredoverride__c != null) { loopadd.specialist__c = z.preferredoverride__c; } else { loopadd.specialist__c= z.preferred_territory__r.rep__c; } for(preferredcontact__c q:contactlists) { if(q.account__c == z.id) { loopadd.preferredcontact__c = q.id; } } loopadd.createddate__c = date.today(); if(z.last_training__c != null) { loopadd.duedate__c = z.last_training__c.adddays(365); } else { loopadd.duedate__c = date.today().adddays(365); } loopadd.initial__c = false; loopadd.status__c = 'unacknowledged'; newpreias.add(loopadd); } z.initialinspectioncomplete__c = true; } seek { update tobeclosed; update invoicedaccounts; insert newpreias; } catch(system.dmlexception q) { system.debug(q); system.debug(invoicedaccounts); system.debug(newpreias); } } public void receiveppw() { monkey = [select id, status__c preferredia__c id in :preferredias , status__c = 'training completed']; (preferredia__c m:monkey) { m.status__c = 'awaiting invoice'; } update monkey; } }

i can't see you're trying write field — or did remove because wasn't working?

that aside, reply can not write roll-up summary field. if require value in field should insert kid records parent test records, appropriate field values such summary field calculates value.

also, can see you're querying perferredia__c @ start, test methods should never depend on info beingness in scheme already, should insert records in test code. reason if seek deploy org has no relevant data, tests fail , so, subsequently, deployment.

salesforce apex-code

Comments

Popular posts from this blog

How do I check if an insert was successful with MySQLdb in Python? -

delphi - blogger via idHTTP : error 400 bad request -

postgresql - ERROR: operator is not unique: unknown + unknown -