You need to sign in to do that
Don't have an account?

test method for wrapper class
Hi All,
I am trying to get test coverage for wrapper class bu i am getting Constructor not defined: [pde5beghou.wrap].<Constructor>()
here is my code can any one help me out
public class OppClass
{
//for pde5trx-adcvs.rev
public integer revnrx{get;set;}
public integer adcnrx{get;set;}
public integer silnrx{get;set;}
public decimal nrxcal{get;set;}
public decimal nrxadc{get;set;}
public decimal nrxrev{get;set;}
public decimal nrxsil{get;set;}
public String d{get;set;}
public string n{get;set;}
public string o{get;set;}
public string p{get;set;}
public decimal aridica{get;set;}
public decimal revatio{get;set;}
public decimal SILDENAFIL{get;set;}
public string a{get;set;}
public string b{get;set;}
public string c{get;set;}
//for date
public string dt{get;set;}
//for pde5trx-adctrx graph
public decimal pde5trxtotal{get;set;}
//forPDE5TRx-Adc vs. Rev Market Share
public decimal peraridica {get;set;}
public decimal perrevatio{get;set;}
public decimal perSILDENAFIL {get;set;}
list<AggregateResult >ar=new list<AggregateResult>();
public oppclass(AggregateResult ar)
{
aridica=integer.valueOf(ar.get('a1'));
revatio=integer.valueof(ar.get('a2'));
SILDENAFIL=integer.valueof(ar.get('a3'));
Datetime dd=Date.valueof(ar.get('s2'));
dt= dd.format('MM/dd/yyyy') ;
pde5trxtotal=(aridica+revatio+SILDENAFIL)+0.5;
peraridica= math.round(aridica*100/pde5trxtotal);
perrevatio=math.round(revatio*100/pde5trxtotal);
perSILDENAFIL=math.round(SILDENAFIL*100/pde5trxtotal);
a=string.valueof(peraridica+'%');
b=string.valueof(perrevatio+'%');
c=string.valueof(perSILDENAFIL+'%');
adcnrx=integer.valueof(ar.get('na1'));
revnrx=integer.valueof(ar.get('na2'));
silnrx=integer.valueof(ar.get('na3'));
nrxcal=(adcnrx+revnrx+silnrx)+0.5;
nrxadc=math.round(adcnrx*100/nrxcal);
nrxrev=math.round(revnrx*100/nrxcal);
nrxsil=math.round(silnrx*100/nrxcal);
n=string.valueof(nrxadc+'%');
o=string.valueof(nrxrev+'%');
p=string.valueof(nrxsil+'%');
}
}
Thanks,
Harsha
Can I have a look on your test class,I don't see it any where.
Hi vinit,
Thanks for the reply here is my test class
static testmethod void v()
{
PDE5_launch__c p=new PDE5_launch__c();
p.ADC_TRX__c =1233;
p.DATA_MONTH_ENDING_DATE__c=Date.newInstance(2008,11,20);
p.REV_TRX__c=98987;
p.SIL_TRX__c=8787;
p.ADC_nRX__c=9898;
p.rev_nrx__c=9898;
p.sil_nrx__c=8787;
list<PDE5_launch__c> a=[select id,ADC_TRX__c ,DATA_MONTH_ENDING_DATE__c,REV_TRX__c,SIL_TRX__c from PDE5_launch__c ] ;
pde5beghou obj=new pde5beghou ();
obj.pde6 =[select id,ADC_TRX__c ,DATA_MONTH_ENDING_DATE__c,REV_TRX__c,SIL_TRX__c from PDE5_launch__c ] ;
obj.pde1=[select id,ADC_TRX__c ,DATA_MONTH_ENDING_DATE__c,DATA_SOURCE__c from PDE5_launch__c where DATA_SOURCE__c='IMS XPONENT' order by DATA_MONTH_ENDING_DATE__c];
obj.pde2=[select id,ADC_TRX__c,DATA_MONTH_ENDING_DATE__c,DATA_SOURCE__c from PDE5_launch__c where DATA_SOURCE__c='ACCREDO' order by DATA_MONTH_ENDING_DATE__c];
obj.pde3=[select id,ADC_TRX__c,DATA_MONTH_ENDING_DATE__c,DATA_SOURCE__c from PDE5_launch__c where DATA_SOURCE__c='CURASCRIPT' order by DATA_MONTH_ENDING_DATE__c];
obj.pde4=[select id,ADC_TRX__c,DATA_MONTH_ENDING_DATE__c,DATA_SOURCE__c from PDE5_launch__c where DATA_SOURCE__c='CVS CAREMARK' order by DATA_MONTH_ENDING_DATE__c];
obj.pde5=[select id,ADC_TRX__c,DATA_MONTH_ENDING_DATE__c,DATA_SOURCE__c from PDE5_launch__c where DATA_SOURCE__c='IMS XPO PR ' order by DATA_MONTH_ENDING_DATE__c ];
obj.agg=[select count(id),sum(ADC_TRX__c)a1,sum(REV_TRX__c)a2,sum(SIL_TRX__c)a3,DATA_MONTH_ENDING_DATE__c s2,sum(ADC_NRX__c)na1,sum(REV_NRX__c)na2,sum(SIL_NRX__c)na3 from PDE5_launch__c group by DATA_MONTH_ENDING_DATE__c order by DATA_MONTH_ENDING_DATE__c ];
obj.pdt=new list<String>();
for(PDE5_launch__c ah : obj.pde1) {
obj.pdt.add(string.valueof(ah.DATA_MONTH_ENDING_DATE__c));
}
obj.pd2=new list<integer>();
for(PDE5_launch__c ah : obj.pde2) {
obj.pd2.add(integer.valueof(ah.ADC_TRX__c));
}
obj.pd3=new list<integer>();
for(PDE5_launch__c ah : obj.pde3) {
obj.pd3.add(integer.valueof(ah.ADC_TRX__c));
}
obj.pd4=new list<integer>();
for(PDE5_launch__c ah : obj.pde4) {
obj.pd4.add(integer.valueof(ah.ADC_TRX__c));
}
obj.pd5=new list<integer>();
for(PDE5_launch__c ah : obj.pde5) {
obj.pd5.add(integer.valueof(ah.ADC_TRX__c));
}
obj.chart4data();
obj.chart2data();
obj.chart3data();
obj.gotoreport();
obj.chart5data();
obj.chart6data();
obj.exlgen();
obj.pde5trxadcvsrevmarketexl();
obj.pde5nrximsexl();
obj.pde5nrxmarxetexl();
obj.adctrxbysourceexl();
obj.getresults();
obj.getwrpres();
list<AggregateResult> avds=new list<AggregateResult>();
obj.wr= new List<pde5beghou.wrap>();
}
I assume that pde5beghou is your outer class ,if that is so to call the wrapper class.you need to do something like below
pde5beghou.OppClass op = new pde5beghou.OppClass(avds);// where avds is the AggregateResult object refernce,it should not be a list as in you constructor you are not passing a list.
Now,you can use op to set the values of your wrapper class.
Hi vinit,
yes it is my outer class i have tried but it is throwing pde5beghou Compile Error: Constructor not defined: [pde5beghou.OppClass].<Constructor>(LIST<AggregateResult>) at line 360 column 29
You have declared avds as a List of AggregateResult.It should be a sinle record as per your constructor.
Either change your constructor or change your variable decalration.
if i remove the list of aggrigate result it is throwing an error variable dose not exists
Change your contructor code from
public oppclass(AggregateResult ar)
to
public oppclass(list<AggregateResult> ar)