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
affuaffu 

Urgent: Please Help me in code coverage

Apex Trigger:

trigger TriggerForReceipts on Receipt__c (after update) {  
List<smagicinteract__smsMagic__c> smsObjects = new List<smagicinteract__smsMagic__c>();
    Id receiptsId = null;  
    for (Receipt__c receipt : Trigger.new)
    {       
      continue;
      
      receiptsId = receipt.id;
        system.debug(system.logginglevel.INFO,'receiptsId :'+receiptsId);
        Receipt__c receiptObject=[select Id, Opportunity_Contact_Number__c, Name from Receipt__c where Id =:receiptsId];
        system.debug(system.logginglevel.INFO,'receiptObject :'+receiptObject);
        Receipt__c beforeUpdateReceipt = System.Trigger.oldMap.get(receiptsId);
        ReceiptsSMSController receiptSMSController = new ReceiptsSMSController();
        if(receiptObject.Opportunity_Contact_Number__c != null){ 
            if(receipt.Payment_Towards__c == 'On Booking'){
                if(receipt.Payment_Towards__c  != beforeUpdateReceipt.Payment_Towards__c){
                   system.debug(system.logginglevel.INFO,'in PaymentTowardsOnBooking..'+receipt.Payment_Towards__c);
                   smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Booking Payment');
                }                
            }
            if(receipt.Payment_Towards__c == 'On Booking' && receipt.Realization_Status__c == 'Done'){
                if((receipt.Payment_Towards__c  != beforeUpdateReceipt.Payment_Towards__c) && (receipt.Realization_Status__c  != beforeUpdateReceipt.Realization_Status__c)){
                   system.debug(system.logginglevel.INFO,'in PaymentTowardsAndRealizationStatus..'+receipt.Payment_Towards__c);
                   smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Booking payment realization');
                }                
            }
            if(receipt.Realization_Status__c == 'Bounced'){
                if(receipt.Realization_Status__c  != beforeUpdateReceipt.Realization_Status__c){
                   system.debug(system.logginglevel.INFO,'in RealizationStatusBounced..'+receipt.Realization_Status__c);
                   smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Cheque bounce');
                }                
            }
             if(receipt.Payment_Towards__c == 'Agreement Signing'){
                if(receipt.Payment_Towards__c  != beforeUpdateReceipt.Payment_Towards__c){
                   system.debug(system.logginglevel.INFO,'in PaymentTowardsOnBooking..'+receipt.Payment_Towards__c);
                   smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Agreement signing payment');
                }                
            }
            if(receipt.Payment_Towards__c == 'Agreement Signing' && receipt.Realization_Status__c == 'Done'){
                if((receipt.Payment_Towards__c != beforeUpdateReceipt.Payment_Towards__c) && (receipt.Realization_Status__c != beforeUpdateReceipt.Realization_Status__c)){
                   system.debug(system.logginglevel.INFO,'in PaymentTowardsAndRealizationStatus..'+receipt.Payment_Towards__c);
                   smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Booking payment realization');
                }                
            }
        }
        
    }
    system.debug(system.logginglevel.INFO,'smsObjects..'+smsObjects);
    insert smsObjects;
   
}

 Apex Class:

@isTest
private class TriggerForReceipts {

    static testMethod void test_TriggerForReceipts() {  
        Account a = new Account(name='test1', Phone='09003095572');
        insert a;
        Opportunity o2 = new Opportunity(
                  AccountId=a.Id,
                  Name='My Opportunity', 
                            StageName='Blocking', Booking_Receipt_Generated__c=true,
                            CloseDate=Date.today());
                            insert o2; 
        Receipt__c receiptObject=new Receipt__c(Name='1245*',Opportunity__c=o2.id,Instrument_Date__c=Date.today(),Bank_Reconciliation_Date__c=Date.today(),Transaction_No__c='123445',
                                 Mode_of_Payment__c='Cash',Payment_Towards__c='On Booking',Receipt_Date__c=Date.today());
       insert receiptObject;
        //Receipt__c receiptObject=[select Id, Opportunity_Contact_Number__c,Instrument_Date__c,Bank_Reconciliation_Date__c,
                                       // Receipt_Date__c,Mode_of_Payment__c,Amount__c,Transaction_No__c,Opportunity__c, Name from Receipt__c  limit 1 ];
        system.debug(system.logginglevel.INFO,'receiptObject :'+receiptObject);
        List<Receipt__c> receiptList = [select Id, Opportunity_Contact_Number__c,Instrument_Date__c,Bank_Reconciliation_Date__c,
                                        Receipt_Date__c,Payment_Towards__c,Mode_of_Payment__c,Amount__c,Transaction_No__c,Opportunity__c, Name from Receipt__c where Id =: receiptObject.Id];
        system.debug(system.logginglevel.INFO,'receiptList :'+receiptList);
        receiptList[0].Receipt_Date__c = Date.today();
         //Transaction_No__c
        update receiptList;
    }
}

 Thanks in advance......

Rajesh SriramuluRajesh Sriramulu

Hi

 

Let me know the present code coverage and which lines are not covered.

 

 

Regards,

Rajesh.

affuaffu

 Code coverage 20%

 

trigger TriggerForReceipts on Receipt__c (after update) {
List<smagicinteract__smsMagic__c> smsObjects = new List<smagicinteract__smsMagic__c>();
Id receiptsId = null;
for (Receipt__c receipt : Trigger.new)
{
continue;

receiptsId = receipt.id;
system.debug(system.logginglevel.INFO,'receiptsId :'+receiptsId);
Receipt__c receiptObject=[select Id, Opportunity_Contact_Number__c, Name from Receipt__c where Id =:receiptsId];
system.debug(system.logginglevel.INFO,'receiptObject :'+receiptObject);
Receipt__c beforeUpdateReceipt = System.Trigger.oldMap.get(receiptsId);
ReceiptsSMSController receiptSMSController = new ReceiptsSMSController();
if(receiptObject.Opportunity_Contact_Number__c != null){
if(receipt.Payment_Towards__c == 'On Booking'){
if(receipt.Payment_Towards__c != beforeUpdateReceipt.Payment_Towards__c){
system.debug(system.logginglevel.INFO,'in PaymentTowardsOnBooking..'+receipt.Payment_Towards__c);
smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Booking Payment');
}
}
if(receipt.Payment_Towards__c == 'On Booking' && receipt.Realization_Status__c == 'Done'){
if((receipt.Payment_Towards__c != beforeUpdateReceipt.Payment_Towards__c) && (receipt.Realization_Status__c != beforeUpdateReceipt.Realization_Status__c)){
system.debug(system.logginglevel.INFO,'in PaymentTowardsAndRealizationStatus..'+receipt.Payment_Towards__c);
smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Booking payment realization');
}
}
if(receipt.Realization_Status__c == 'Bounced'){
if(receipt.Realization_Status__c != beforeUpdateReceipt.Realization_Status__c){
system.debug(system.logginglevel.INFO,'in RealizationStatusBounced..'+receipt.Realization_Status__c);
smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Cheque bounce');
}
}
if(receipt.Payment_Towards__c == 'Agreement Signing'){
if(receipt.Payment_Towards__c != beforeUpdateReceipt.Payment_Towards__c){
system.debug(system.logginglevel.INFO,'in PaymentTowardsOnBooking..'+receipt.Payment_Towards__c);
smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Agreement signing payment');
}
}
if(receipt.Payment_Towards__c == 'Agreement Signing' && receipt.Realization_Status__c == 'Done'){
if((receipt.Payment_Towards__c != beforeUpdateReceipt.Payment_Towards__c) && (receipt.Realization_Status__c != beforeUpdateReceipt.Realization_Status__c)){
system.debug(system.logginglevel.INFO,'in PaymentTowardsAndRealizationStatus..'+receipt.Payment_Towards__c);
smsObjects = receiptSMSController.sendSMS(smsObjects, receipt, 'Booking payment realization');
}
}
}

}
system.debug(system.logginglevel.INFO,'smsObjects..'+smsObjects);
insert smsObjects;

}

Rajesh SriramuluRajesh Sriramulu

Hi

 

I think in trigger u have to remove the continue means then ur code coverage will increase but this is not the correct scenario and just u check that ur trigger is increased the code coverage or not.On the other side we are trying to find another way increase the code coverage.

 

 

Regards,

Rajesh.