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
SS KarthickSS Karthick 

Test Class for pagination

Hi folks,
      Can anyone tell me how to write the test class for pagination?
Below is my test class which covers 85%  but it didnt covers the hasnext,previous and pagenumber method.
 
@isTest(SeeAllData=true)
public class PaginationControllerTest {
    
        public static testMethod void testSearchAccount() {
        PageReference pageRef = Page.TestPagination;
        Test.setCurrentPage(pageRef);

        // Instantiate a new controller with all parameters in the page
    
        PaginationController  p=new PaginationController ();
        
        p.getAccountList();
        p.Next();
        p.First();
        p.Last();
        p.Previous();
        p.Cancel();
        p.con.getHasPrevious();
        p.con.getHasNext();
        p.con.getPageNumber();
        
       
     }

}



Controller:
public class PaginationController {
    public ApexPages.StandardSetController con {
        get {
                if(con == null) {
                    con = new ApexPages.StandardSetController(Database.getQueryLocator([Select Id, Name,Type FROM Account])); 
                    con.setPageSize(5);                      
                }
                return con;
        }
        set;
    }
    
    public List<Account> getAccountList(){
        return (List<Account>)con.getRecords();
    }
    
    public Boolean hasNext {
        get {
                return con.getHasNext();
            }
        set;
    }
   
    public Boolean hasPrevious {
        get {
            return con.getHasPrevious();
        }
        set;
    }
   
    public Integer pageNumber {
        get {
            return con.getPageNumber();
        }
        set;
    }
   
    public void first() {
        con.first();
    }
   
    public void last() {
        con.last();
    }

    public void previous() {
        con.previous();
    }
    
    public void next() {
        con.next();
    }
  
    public void cancel() {
        con.cancel();
    }        

}


Thanks in advance
Karthick
Best Answer chosen by SS Karthick
PratikPratik (Salesforce Developers) 
Hi Karthick,

Here is the sample for your code:
http://salesforce.stackexchange.com/questions/58453/how-to-write-the-test-class-for-pagination

Thanks,
Pratik

All Answers

PratikPratik (Salesforce Developers) 
Hi Karthick,

Here is the sample for your code:
http://salesforce.stackexchange.com/questions/58453/how-to-write-the-test-class-for-pagination

Thanks,
Pratik
This was selected as the best answer
PratikPratik (Salesforce Developers) 
Glad it helped!

Thanks,
Pratik
reem sharawyreem sharawy
Dear Patrik

I tried your code, the run test failed, although it raised my code coverage from 19% to 34%
 
@isTest  (SeeAllData=true) 

    private class TESTAccountOpportunityTabExtension {
    
        static testmethod void AccountOpportunityTabExtension_Test (){
        
            test.StartTest();
        
            Account acc = new Account(Name ='icrm testing acc');
            insert acc;
            
            opportunity opp = new opportunity ( Name='testing DIE 4/6/2015' ,  AccountId= acc.Id,StageName = 'Prospecting', 
                               type= 'parts', Description= 'describe', Inconterms__c = 'FCA', CloseDate = System.today().addDays(30));
            
           insert opp;
           
           opportunity opps = new opportunity ( id = '0068E0000060EhbQAE', Name='testing DIE 4/6/2015' ,  AccountId= acc.Id,StageName = 'Prospecting', 
                               type= 'Sales', Opportunity_Division__c = 'PRODUCT SUPPORT', Description= 'describe', Inconterms__c = 'FCA',  CloseDate = System.today().addDays(30));
            
           update opps;
           
           opportunity Deltaopp = new opportunity ( id = '0068E000009BCivQAG', Name='testing DIE 4/6/2015' ,  AccountId= acc.Id,StageName = 'Prospecting', 
                               type= 'Sales', Opportunity_Division__c = 'POWER SYSTEM-DELTA(PERKINS)', Description= 'describe', Inconterms__c = 'FCA',  CloseDate = System.today().addDays(30));
            
           update Deltaopp;
           
           opportunity EnginePowerGenerationaopp = new opportunity ( id = '0068E000008Myy4QAC', Name='testing DIE 4/6/2015' ,  AccountId= acc.Id,StageName = 'Prospecting', 
                               type= 'Sales', Opportunity_Division__c = 'ENGINE POWER GENERATION', Description= 'describe', Inconterms__c = 'FCA',  CloseDate = System.today().addDays(30));
            
           update EnginePowerGenerationaopp ;
           
           opportunity Otheropp = new opportunity ( id = '0068E000009BDvgQAG', Name='testing DIE 4/6/2015' ,  AccountId= acc.Id,StageName = 'Prospecting', 
                               type= 'Sales', Opportunity_Division__c = 'OTHERS MISC - INTERNAL', Description= 'describe', Inconterms__c = 'FCA',  CloseDate = System.today().addDays(30));
            
           update Otheropp ;
           
      
           //ApexPages.StandardController sc = new ApexPages.StandardController(acc);
           //AccountOpportunityTabExtension obj = new AccountOpportunityTabExtension(sc);
           
           PageReference pref = Page.Opp_Tabs;
           pref.getParameters().put('id', acc.id);
           Test.setCurrentPage(pref);
           
           ApexPages.StandardController sc = new ApexPages.StandardController(acc);
           //AccountInvoiceTabExtension obj = new AccountInvoiceTabExtension(sc);
           
           AccountOpportunityTabExtension mc = new AccountOpportunityTabExtension(sc);
           
           //PageReference result = AccountInvoiceTabExtension.autoRun();
           PageReference result = mc.NewOpp();
           System.assertNotEquals(null, result);

           PageReference result2 = mc.sortConstructionPaginationList();
           System.assertNotEquals(null, result); 
           
           PageReference result3 = mc.sortProductSupportPaginationList();
           System.assertNotEquals(null, result); 
           
           PageReference result4 = mc.sortPowerSystemPaginationList();
           System.assertNotEquals(null, result); 
           
           PageReference result5 = mc.sortDeltaPaginationList();
           System.assertNotEquals(null, result); 
           
           PageReference result6 = mc.sortOtherPaginationList();
           System.assertNotEquals(null, result);  
           
           //ListPaginationBase code Coverage
           
           ListPaginationBase p=new ListPaginationBase();
         
           
           p.NextAction();
           p.firstAction();
           p.LastAction();
           p.PreviousAction();
           p.getHasNext();
           p.getfirstRowIndex();
           p.getObjectPageList();
           
           test.stopTest();         
        }
        
}