You need to sign in to do that
Don't have an account?
Amita Tatar
not able to get current page id in test class, getting null in my class.
Hi all,
I am pasting below my apex class and test class. I am getting accID as null. Please help me where i am going wrong.
-Amita
I am pasting below my apex class and test class. I am getting accID as null. Please help me where i am going wrong.
apex class---------------------- public class DisplayNotesNew{ public List<WrapperClass> listWrapper {get;set;} public List<ContactWrapper> listWrapper1 {get;set;} public List<OpportunityWrapper> listWrapper2 {get;set;} public Id accId; Public Account acc; public List<Note> selectedNotes{get;set;} public List<Contact> selectedContacts{get;set;} public List<opportunity> selectedOpps{get;set;} List<note> contactNote = new List<note>(); List<note> oppNote = new List<note>(); public ID noteID {get;set;} Public String getRadioValue{get;set;} public void assignNoteId() { Id note = ApexPages.currentPage().getParameters().get('note'); system.debug('18-->'+note ); if(note != null) { noteID = note; } } public DisplayNotesNew(){ } public DisplayNotesNew(ApexPages.StandardController Controller) { accId = ApexPages.currentPage().getParameters().get('id'); system.debug('********accId************'+accId); List<Note> listAcct = [SELECT Id,Title, Body,Parent.Id,CreatedDate FROM Note where Parent.Id =: accId order by ID DESC]; system.debug('listAcct--------------------'+listAcct); if(listAcct.size() > 0) { listWrapper = new List<WrapperClass>(); for(Note a : listAcct) { listWrapper.add(new WrapperClass(a)); } } List<Contact> listContact = [Select Id, FirstName, LastName,name From Contact where AccountId =: accId order by name DESC]; if(listContact.size() > 0){ listWrapper1 = new List<ContactWrapper>(); for(Contact c : listContact){ listWrapper1.add(new ContactWrapper(c)); } } List<Opportunity> listOpp = [select id,name,closeDate from Opportunity where AccountId =: accId order by closeDate ASC]; if(listOpp.size() > 0){ listWrapper2 = new List<OpportunityWrapper>(); for(Opportunity o : listOpp){ listWrapper2.add(new OpportunityWrapper(o)); } } } public pagereference assignNotes(){ system.debug('******noteID******'+noteID); Note no = [select id,title,body,parentId from Note where id=:noteID limit 1]; system.debug('********no******'+no); /*selectedNotes = new List<Note>(); system.debug('*********listWrapper ********'+listWrapper); for(WrapperClass wrapAccountObj : listWrapper ) { if(wrapAccountObj.checkBool == true) { selectedNotes.add(wrapAccountObj.acct); system.debug('*********selectedNotes********'+selectedNotes); } } */ selectedContacts = new List<Contact>(); for(ContactWrapper wrapContactObj : listWrapper1){ if(wrapContactObj.checkBool == true){ Note nt = new Note(); nt.Title = no.title; nt.Body = no.body; nt.ParentId = wrapContactObj.cons.Id; contactNote.add(nt); //selectedContacts.add(wrapContactObj.cons); //system.debug('*********selectedContacts******'+selectedContacts); } } insert contactNote; selectedOpps = new List<Opportunity>(); for(OpportunityWrapper wrapOppObj : listWrapper2){ if(wrapOppObj.checkBool == true){ Note nt = new Note(); nt.Title = no.title; nt.Body = no.Body; nt.parentId = wrapOppObj.ops.Id; oppNote.add(nt); //selectedOpps.add(wrapOppObj.ops); // system.debug('******selectedOpps*********'+selectedOpps); } } insert oppNote; PageReference pg = new PageReference('/apex/DisplayAccountNotes?id='+accId); /*Redirect on the same page*/ pg.setRedirect(true); return pg; } public class WrapperClass{ public Boolean checkBool {get;set;} public Note acct {get;set;} public WrapperClass(Note acct){ this.acct = acct; checkBool = false; } } public class ContactWrapper{ public Boolean checkBool {get;set;} public Contact cons {get;set;} public ContactWrapper(Contact cons){ this.cons = cons; checkBool = false; } } public Class OpportunityWrapper{ public Boolean checkBool {get;set;} public Opportunity ops {get;set;} public OpportunityWrapper(Opportunity ops){ this.ops = ops; checkBool = false; } } } Test Class----------------------------------------- @isTest public class DisplayNotesNewTestClass { static testmethod void test1(){ Account acc = new Account(name='vivek112'); insert acc; Note ne = new Note(parentid = acc.Id,body ='hi',title = 'Bye'); insert ne; Contact con = new Contact(FirstName='vivek112', AccountId = acc.Id); List<Contact> lstcon = new List<Contact>(); lstcon.add(con); Opportunity opp = new opportunity(name = 'a',stageName = 'Closed Won',closedate = date.today(),Renewal_Date__c = date.today(),AccountId = acc.Id); List<Opportunity> lstopp = new List<Opportunity>(); lstopp.add(opp); system.debug('lstopp'+lstopp); Note note1 = new Note(parentid = acc.Id,title='test',body= 'hi'); List<note> nList = new List<Note>(); nList.add(note1); Note note2 = new Note(parentId = acc.Id,title = 'Hi',body = 'Hi'); insert note2; system.debug('note2-------------'+note2); PageReference pageRef = Page.DisplayAccountNotes; Test.setCurrentPage(pageRef); DisplayNotesNew obj = new DisplayNotesNew(new ApexPages.StandardController(acc)); ApexPages.currentPage().getParameters().put('accId',acc.Id); // DisplayNotesNew controller = new DisplayNotesNew(); Test.startTest(); ApexPages.CurrentPage().getparameters().put('note',note2.Id); DisplayNotesNew objCustom = new DisplayNotesNew (); DisplayNotesNew.ContactWrapper objwrap = new DisplayNotesNew.ContactWrapper(con); DisplayNotesNew.OpportunityWrapper objwrap1 = new DisplayNotesNew.OpportunityWrapper(opp); DisplayNotesNew.WrapperClass objwrap2 = new DisplayNotesNew.WrapperClass(note1); Id accId = acc.Id; id note = note2.id; objCustom.assignNoteId(); id noteID = note; objCustom.assignNotes(); Test.stopTest(); } }
-Amita
ApexPages.currentPage().getParameters().put('accId',acc.Id);
with
ApexPages.currentPage().getParameters().put('id',acc.Id); in test class.
Hope this works
I got the accid. But now stuck at line no 73.. where i have the checkbool condition. How do i add it in test class?
okay i will do that and let you know if it works
I incuded those two lines, still test is getting failed and giving me null pointer exception
Can you please share the full error message?
Hi
The boolean is false because when you are adding a note in wrapper class it make it always false.(see you line 39 and 104.
Pass two paremeter one for object and other for Boolean.
Hope this works !!