function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
harshasfdcharshasfdc 

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

Vinit_KumarVinit_Kumar

Can I have a look on your test class,I don't see it any where.

harshasfdcharshasfdc

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>();

}

Vinit_KumarVinit_Kumar

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.

 

harshasfdcharshasfdc

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

Vinit_KumarVinit_Kumar

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.

harshasfdcharshasfdc

if i remove the list of aggrigate result it is throwing an error variable dose not exists 

Vinit_KumarVinit_Kumar

Change your contructor code from

 

public oppclass(AggregateResult ar)

 

 

to

 

public oppclass(list<AggregateResult>  ar)