• shekhar kumar 5
  • NEWBIE
  • 0 Points
  • Member since 2015

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 0
    Replies
Hello gyys ,
                 i am trying to make a test class  but i am facing some issue can someone help me out

Class -------------
public with sharing class NewQuoteLineItemCont {

    public Quote__c quote {get; set;}        
    public List<QuoteLineItemWrapper> qliwList { get; set; }
    public Integer glbCounter = 0;
    public Integer index {get;set;}
    public String  type {get;set;}
    
    public NewQuoteLineItemCont(){
     
        String quoteId = ApexPages.CurrentPage().getParameters().get('QuoteId');
        
        quote = ([ SELECT Id,Name FROM Quote__c WHERE Id =: quoteId ] ).get(0);                
        
        Quote_Line_Item__c item1 = new Quote_Line_Item__c();        
        item1.Quote__c = quote.Id;
        
        glbCounter = 0;
                        
        Slab__c sl = new Slab__c();
        
        qliwList = new List<QuoteLineItemWrapper> ();                
        
        QuoteLineItemWrapper qw = new QuoteLineItemWrapper ( quote , item1 , sl, glbCounter );        
        qliwList.add ( qw );  
        
        glbCounter++;
                        
    }
    
    public void setSlabTableMethod(){
    
        system.debug('===========index=============>>' + index );
        
        if ( index != null && index >= 0  ){
        
            QuoteLineItemWrapper qw = qliwList.get ( index );
                        
            if ( type != null && type.equalsIgnorecase('Slab') )
                qw.showSlab = true;
            else
                qw.showSlab = false;
        }
        
    
    }
    
    public void addProduct(){
    
        Quote_Line_Item__c item1 = new Quote_Line_Item__c();        
        item1.Quote__c = quote.Id;
        item1.Service_Tax__c = 14;
        item1.VAT_CST__c = 5;
                    
                                
        Slab__c sl = new Slab__c();                                
        
        QuoteLineItemWrapper qw = new QuoteLineItemWrapper ( quote , item1 , sl, glbCounter );        
        qliwList.add ( qw );
        
        glbCounter++;
        
        system.debug('===========qliwList==============>>'+ qliwList );
        
    
    }
    
    public PageReference saveQuoteLine(){
    
        Quote_Line_Item__c item = new Quote_Line_Item__c ();
        
        Map<Quote_Line_Item__c,List<Slab__c>> quoteSlabMap = new Map<Quote_Line_Item__c,List<Slab__c>>();
        
        List<Quote_Line_Item__c> insQuLineListWihoutSlab = new List<Quote_Line_Item__c>();
    
        for ( QuoteLineItemWrapper qw : qliwList ){
        
            System.debug('==========qw===============>>'+ qw );
            System.debug('==========qw.lineItem===============>>'+ qw.lineItem );
            System.debug('==========qw.slabList===============>>'+ qw.slabList );
                    
            item = qw.lineItem;
            
            System.debug('==========item===============>>'+ item );
            System.debug('==========item.Product__c ===============>>'+ item.Product__c  );
            System.debug('==========item.Price_Type__c===============>>'+ item.Price_Type__c);
            
            if ( item.Product__c != null ){
                        
                if ( (item.Price_Type__c).equalsIgnoreCase('Slab') ){
                                
                    List<Slab__c> slbList = new List<Slab__c>();
                    
                    for ( Slab__c sl : qw.slabList ){
                    
                        if ( sl.To__c != null && sl.Till__c != null && sl.Price__c != null )
                            slbList.add ( sl );
                    }
                    System.debug('==========item===============>>'+ item );
                    System.debug('==========slbList===============>>'+ slbList );                   
                    quoteSlabMap.put ( item , slbList );  
                                                     
                }else{
                    insQuLineListWihoutSlab.add ( item );
                }
                                        
            }                                    
        }
        
        if ( insQuLineListWihoutSlab.size() > 0 )
            INSERT insQuLineListWihoutSlab;
        
        System.debug('==========quoteSlabMap========BEFORE=======>>'+ quoteSlabMap );
        
        if ( quoteSlabMap.size() > 0 ){
        
            List<Quote_Line_Item__c> insQuLineList = new List<Quote_Line_Item__c>();
            
            System.debug('==========quoteSlabMap.keySet()===============>>'+ quoteSlabMap.keySet() );
        
            for ( Quote_Line_Item__c qline : quoteSlabMap.keySet() ){
                System.debug('==========qline===============>>'+ qline );
                insQuLineList.add ( qline );
            }
            
            INSERT insQuLineList;                                                  
            
            Integer ck = 0;
            List<Slab__c> insSbList = new List<Slab__c>();
            
            for ( List<Slab__c> sbList : quoteSlabMap.values() ){
            
                System.debug('==========sbList================>>'+ sbList );
            
                for ( Slab__c sl : sbList ){
                    System.debug('==========insQuLineList.get ( ck )================>>'+ insQuLineList.get ( ck ) );
                    sl.Quote_Line_Item__c = insQuLineList.get ( ck ).Id;
                    insSbList.add ( sl );
                }
                ck++;
            
            }
            
            System.debug('==========insSbList================>>'+ insSbList );
            
            if ( insSbList.size() > 0 )
                INSERT insSbList;
            
            
            /*List<Slab__c> insSlabList = new List<Slab__c>();
            
            for ( Quote_Line_Item__c line : quoteSlabMap.keySet() ){
            
                System.debug('==========line===============>>'+ line );
                System.debug('==========line.Id===============>>'+ line.Id );
            
                List<Slab__c> sList = quoteSlabMap.get ( line );                
                
                System.debug('==========sList===============>>'+ sList );
                
            }
            
             System.debug('==========quoteSlabMap========AFTER=======>>'+ quoteSlabMap );*/
                    
        }
    
        return ( new PageReference ('/'+quote.Id) );
    }
    
    public PageReference cancelQuoteLine(){
    
        return ( new PageReference ('/'+quote.Id) );
    }
    
    public class QuoteLineItemWrapper {
    
        public Integer counter {get;set;}
        public Quote__c quote {get;set;}
        public Quote_Line_Item__c lineItem {get;set;}
        public List<Slab__c> slabList {get;set;}
        public Boolean showSlab {get;set;}
    
        public QuoteLineItemWrapper( Quote__c q, Quote_Line_Item__c li , Slab__c s, Integer cnt){
        
            counter = cnt;
            quote = q;
            lineItem = li;
            //Slab__c slab;  
            
            slabList = new List<Slab__c>();
            showSlab = false;
            
            for ( Integer i = 0 ; i < 5 ; i++ ){
                Slab__c slab = new Slab__c(name = 'slab-'+String.valueOf(i+1));
               
                slabList.add ( slab );
            }                                   
        
        }
        
    }    

}




and my test class is follows

@istest
Private Class TestNewQuoteLineItemCont{
Static TestMethod void TestNewQuoteLineItemCont(){

 
Account acc = new account();
      acc.Name = 'Test';  
      insert acc;
          
    Opportunity__c opp=new Opportunity__c(Name='test12',Account__c=acc.id);
        insert opp;
    Quote__c lead = new Quote__c();
    lead.Description__c= 'TestLeadTest';
    lead.Opportunity_Name__c=opp.id;

    insert lead;
    
    Product__c p=new Product__c();
    p.Name='test';
    insert p;

    Quote_Line_Item__c Eve = new Quote_Line_Item__c();
    Eve.Quote__c= lead.id;
    Eve.Product__c=p.id;
    insert Eve;

    Slab__c s=new Slab__c();
    s.name='s-1';
    s.Quote_Line_Item__c=Eve.id;
    insert s;

    Slab__c s1=new Slab__c();
    s1.name='s-1';
    s1.Quote_Line_Item__c=Eve.id;
    insert s1;

   NewQuoteLineItemCont cls = new NewQuoteLineItemCont();
   cls.QuoteLineItemWrapper a = new cls.QuoteLineItemWrapper(lead,Eve,s,1);
   
 

    cls.setSlabTableMethod();
    cls.addProduct();
    cls.saveQuoteLine();
    cls.cancelQuoteLine();
    cls.index =1;
    cls.type = 'abc';
    

   }
}

Error is---------- Invalid type: cls.QuoteLineItemWrapper at line 38 column 37