• Vinay Kumar Sattaru
  • NEWBIE
  • 0 Points
  • Member since 2016

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
    Questions
  • 1
    Replies
HI,

Need help covering test class for below Apex Batch class,i really appreciate if someone respond me quickly.
Thanks In Advance!
 
global class UpdateBatch_Usr_login implements Database.Batchable<sObject> {
    String query;
    global Database.QueryLocator start(Database.BatchableContext BC) {

        query = 'SELECT Id, isActive, Status__c FROM User';

        return Database.getQueryLocator(query);

    }
    global void execute(Database.BatchableContext BC, List<User> scope) {    

        List<Id> usrLogLst = new List<Id>();

        for(UserLogin ul : [SELECT UserId, isFrozen from UserLogin where isFrozen = true and UserId IN: scope]){

           usrLogLst.add(ul.userid);
        }
        for(User usr : scope){

            if(usrLogLst.contains(usr.id)){

                usr.status__c = 'Frozen';
            }

            else{

                if(usr.isActive==true){

                    usr.status__c = 'Active';
                }

                else{
                    usr.status__c = 'Inactive';

                }

            }

        }

        update scope;
    }

    global void finish(Database.BatchableContext BC) {

    }
}