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
vivworldvivworld 

test class help very urgent


global class bepCDigital {
    //variable declarations
    public id ChatterEntityId{get;set;}
    public string Admingroupid{get;set;}
    public string Admingroupname{get;set;}
    public string ChatterEntityname{get;set;}
    public string IdChosen{get;set;}
    public List<Assets__c> DigitalAsset{get; set;}
    public List<FeedItemsWrapper> mostDiccussedFeedsList{get;set;}
    public List<Digital_Group__c> groupname {get;set;}
    public List<UsefulLinks__c> usefulink{get;set;}   
    public Document document {get; set; }
    public Integer commentcount {get; set; }
    public UsefulLinks__c usl{get;set;} //useful links
    
    //constructor
    Public bepCDigital()
    {
        try
        {
            usl = new UsefulLinks__c();
            document= new Document();
            commentcount = Integer.valueOf(Limits__c.getValues('MostDiscussedLimit').Count__c) ;
            Map<String,Digital_Group__c> allCodes = Digital_Group__c.getAll();
            groupname = allCodes.values();
            for(Digital_Group__c d:groupname)
            {
                if(d.RecordType__c=='Team')
                {
                    Admingroupid=d.ChatterGroupId__c;
                    Admingroupname=d.name;
                }
            }
            ChatterEntityId=Admingroupid;
            ChatterEntityname=Admingroupname;
            system.debug('ChatterEntityId'+ChatterEntityId);
            DigitalAsset=[select id,name,Asset_Storage__c,Asset_Type__c,Document_Type__c,External_Link__c,Asset_Image__c,IsUpdated__c,Description__c   from Assets__c  order by OrderAssetby__c asc limit 4];
            system.debug('DigAsset:' +DigitalAsset);
            this.mostDiccussedFeedsList= new List<FeedItemsWrapper>();
            getUsefullinks();
            //usefulink=[select name,url__c,Active__c,Description__c from UsefulLinks__c where Active__c=true];
            // AssestChatter();
            mostDiscussedPost();   
        }
        catch(Exception e)
        { 
            System.debug('Exception :' + e.getStackTraceString());
        }
    }    

    
    public string getdigitalHeadImage () { 
        try{
            document doc = [  SELECT Id,Description, FolderId, Folder.Name FROM Document WHERE Folder.Name = 'Head Of Digital Image' order by lastmodifieddate desc limit 1];
            string imageid = doc.id; 
            imageid = imageid.substring(0,15);
            return '/servlet/servlet.FileDownload?file=' + imageid;
        }
        catch(Exception e)
        { 
            System.debug('Exception :' + e.getStackTraceString());
            return null;
        }
        
    }    
   
 
    public PageReference upload() {
        document.AuthorId = UserInfo.getUserId();
        document doc = [  SELECT FolderId FROM Document WHERE Folder.Name = 'Head Of Digital Image' limit 1];
        document.FolderId = doc.FolderId; // put Head Of Digital Image folder's Id
        
        try {
            insert document;
        } catch (DMLException e) {
            ApexPages.addMessage(new ApexPages.message(ApexPages.severity.ERROR,'Error uploading file'));
            return null;
        } finally {
            document.body = null; // clears the viewstate
            document = new Document();
        }
        
        ApexPages.addMessage(new ApexPages.message(ApexPages.severity.INFO,'File uploaded successfully'));
        return null;
    }
    
    // Method for saving the url entered in useful link popup section
     public List<UsefulLinks__c> getUsefullinks()
     {
         usefulink = new list<UsefulLinks__c>();
         usefulink=[select name,url__c,Active__c,Description__c from UsefulLinks__c where Active__c=true];
         return usefulink;
     }
     public PageReference saveUrl() { 
     try {
            insert usl;
            getUsefullinks();
            
          } catch (DMLException e) {
                ApexPages.addMessage(new ApexPages.message(ApexPages.severity.ERROR,'Error while saving useful link'));
                return null;
          } finally {
              usl.Name=null;
              usl.Active__c=null;
              usl.Description__c=null;
              usl.Url__c=null;
          } 
        PageReference ref = new PageReference('/apex/bepVDigital_1?sfdc.tabName=01r6E000000Ciou');
    return ref;
  }
      

    public PageReference AssestChatter()
    {
        try
        {
            ChatterEntityId=IdChosen;
            system.debug('ChatterEntityId'+ChatterEntityId);
            Assets__c a=[select Id,name from Assets__c where id=:IdChosen];
            ChatterEntityname=a.name;
            mostDiscussedPost();
            return null;
        }
        catch(Exception e)
        { 
            System.debug('Exception :' + e.getStackTraceString());
            return null;
        }
    }
    
       
    
    Public PageReference mostDiscussedPost()
    {
        try{
            if( mostDiccussedFeedsList!=null)
            {
                mostDiccussedFeedsList.clear();  
            }
            for (FeedItem f:[select ID,body,ParentId,CommentCount,LikeCount,CreatedDate,CreatedById,CreatedBy.Name,(select commentbody,CreatedBy.Name,CreatedDate,CreatedById from feedcomments ) fc FROM FeedItem WHERE Parentid=:ChatterEntityId ORDER BY CommentCount Desc Limit :commentcount] )
            {
                system.debug('Inside FeedItem Loop');
                user u=[SELECT id,smallPhotoUrl from User WHERE Id =:f.CreatedById];
                system.debug(' *** User id : '+f.CreatedById);
                this.mostDiccussedFeedsList.add( new FeedItemsWrapper(f,getUserPhotoURL(u.id )));
            } 
            
            return null;
        }
        catch(Exception e)
        { 
            System.debug('$Exception :' + e.getStackTraceString());
            return null;
        }
    }
  
    public PageReference removeChatterlink()
    {
        try
        {
            ChatterEntityId=Admingroupid;
            ChatterEntityname=Admingroupname;
            mostDiscussedPost();
            return null;
        }
        catch(Exception e)
        { 
            System.debug('$$$$$ Exception :' + e.getStackTraceString());
            return null;
        }
    }
  
    public String getUserPhotoURL(id UserId) {
        try
        {
            ConnectApi.Photo ph =  ConnectApi.UserProfiles.getPhoto(null, UserId);
            return ph.fullEmailPhotoUrl;
        }
        catch(Exception e)
        { 
            System.debug('Exception :' + e.getStackTraceString());
            return null;
        }
    }
    public class FeedItemsWrapper
    {
        public FeedItem feedI{get;set;}
        public String imageurl{get;set;}     
        public List<FeedCommentsWrapper> feedComments {get;set;} 
        
        public FeedItemsWrapper(FeedItem fI,String image)
        {
            try
            {
                this.feedI= fI; 
                feedComments  = new  List<FeedCommentsWrapper>();          
                for( FeedComment feedC1 : fI.FeedComments)
                {               
                    FeedCommentsWrapper feedCommentsW = new  FeedCommentsWrapper();
                    feedCommentsW.feedc=feedC1;
                    ConnectApi.Photo ph =  ConnectApi.UserProfiles.getPhoto(null, feedC1.CreatedById);
                    feedCommentsW.imageurl =ph.fullEmailPhotoUrl;
                    feedComments.add(feedCommentsW);
                }
                this.imageurl = image;
            }
            catch(Exception e)
            { 
                //System.debug('$$$$$ Exception :' + e.getStackTraceString());
                System.debug('$$$$$ Exception :' + e);
            }
        }
    }
     
    public class FeedCommentsWrapper
    {
        public FeedComment feedc{get;set;}
        public String imageurl{get;set;} 
        public FeedCommentsWrapper(FeedComment fC,String image)
        {
            try
            {
                this.feedc= fC;
                this.imageurl = image;
            }
            catch(Exception e)
            { 
                System.debug('$$$$$ Exception :' + e.getStackTraceString());
            }
        }
        public FeedCommentsWrapper(){ }
    }
}
Amit Chaudhary 8Amit Chaudhary 8
Sample test class to start
@isTest 
public class bepCDigitalTest 
{
	static testMethod void testMethod1() 
	{
		Account testAccount = new Account();
		testAccount.Name='Test Account' ;
		insert testAccount;

		Limits__c lim = new Limits__c();
		lim.Name ='MostDiscussedLimit';
		lim.Count__c = 10;
		insert lim;
			
		Calendar__c cal = new Calendar__c();
		cal.name ='PubCalendar';
		cal.CalID__c ='11';	
		insert cal;
		
		Digital_Group__c digG = new Digital_Group__c();
		digG.RecordType__c ='Team';
		digG.ChatterGroupId__c ='1111';
		digG.ChatterGroupId__c ='test';
		insert digG;
		
		Assets__c asset = new Assets__c();
		asset.name ='test';
		// add all required field here
		insert asset ;
		
		UsefulLinks__c  useFulllink = new UsefulLinks__c ();
		useFulllink.Name = 'test';
		useFulllink.Active__c = true;
		insert useFulllink;
		
		
		Test.StartTest(); 


			bepCDigital  obj = new bepCDigital();
			obj.IdChosen ='test';
			
			List<UsefulLinks__c> lstUseFul = obj.getUsefullinks();
			
			obj.saveUrl();
			obj.AssestChatter();
			obj.mostDiscussedPost();
			obj.removeChatterlink();
			
		Test.StopTest();
	}
}