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
vivek singh08481200707119766vivek singh08481200707119766 

Please help me in test class this is trigger And test class but code coverage is 0 please how to increase code coverage

This is trigger
_______________________________
trigger chekDocSign on dsfs__DocuSign_Recipient_Status__c (After insert, After update) {
    for(dsfs__DocuSign_Recipient_Status__c ob :trigger.new){
        if(ob.dsfs__Date_Signed__c != null){
            dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: ob.Id limit 1];
            Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
            objOpp.StageName = 'Closed Won - Signed';
            update objOpp;
        }else{
            if(ob.dsfs__Date_Declined__c != null){
                dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: ob.Id limit 1];
                Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
                objOpp.StageName = 'Closed Lost (Cancelled)';
                update objOpp;
            }          
        }       
    }
}
________________________________________
Test class



@isTest
public class chekDocSignTracker
{
   Static testmethod void insertRecordwithDateSigned()
    {
             Account objAccount = new Account();
             objAccount.Name = 'Vivek';
             objAccount.Type = 'Supplier';
             objAccount.Phone = '1234';
             objAccount.CurrencyIsoCode = 'AUD';
             insert objAccount;
            
             Contact objcontact = new contact();
             objcontact.LastName = 'Singh';
             objcontact.CurrencyIsoCode = 'AUD';
             objcontact.Account = objAccount ;
             insert objContact ;
            
             opportunity objopportunity= new opportunity ();
             objopportunity.Name = 'Hindi2014';
             objopportunity.CloseDate = System.Today();
             objopportunity.Account = objAccount;
             objopportunity.Buyer__c = objcontact.id;
             objopportunity.Vendor__c = objaccount.id;
             objopportunity.StageName = 'Prposal Sent';
             objopportunity.Billing_Terms__c = 'On Completion';              
             objopportunity.Type = 'New Business';
             insert Objopportunity;
                 
      
         dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
          objdocusign.dsfs__Opportunity__c=objopportunity.id;
          insert objdocusign;
         
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;
         
          
        
     }
  }
Best Answer chosen by vivek singh08481200707119766
Arunkumar RArunkumar R
You can try this one,
@isTest
public class chekDocSignTracker
{
   Static testmethod void insertRecordwithDateSigned()
    {
			 Account objAccount = new Account();
             objAccount.Name = 'Vivek';
             objAccount.Type = 'Supplier';
             objAccount.Phone = '1234';
             objAccount.CurrencyIsoCode = 'AUD';
             insert objAccount;
            
             Contact objcontact = new contact();
             objcontact.LastName = 'Singh';
             objcontact.CurrencyIsoCode = 'AUD';
             objcontact.Account = objAccount ;
             insert objContact ;
			 
	         opportunity objopportunity= new opportunity ();
             objopportunity.Name = 'Hindi2014';
             objopportunity.CloseDate = System.Today();
             objopportunity.Account = objAccount;
             objopportunity.Buyer__c = objcontact.id;
             objopportunity.Vendor__c = objaccount.id;
             objopportunity.StageName = 'Prposal Sent';
             objopportunity.Billing_Terms__c = 'On Completion';              
             objopportunity.Type = 'New Business';
             insert Objopportunity;
		  
          dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
          objdocusign.dsfs__Opportunity__c=objopportunity.id;
		  objdocusign.dsfs__Date_Signed__c=System.today();
          insert objdocusign;

		 		 
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;

			         
		  dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];
		 
		 
		 Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
         objOpp.StageName = 'Closed Won - Signed';
         update objOpp;

          
        
     }
	 
	  Static testmethod void insertRecordwithDateDeclined()
    {
			 Account objAccount = new Account();
             objAccount.Name = 'Vivek';
             objAccount.Type = 'Supplier';
             objAccount.Phone = '1234';
             objAccount.CurrencyIsoCode = 'AUD';
             insert objAccount;
            
             Contact objcontact = new contact();
             objcontact.LastName = 'Singh';
             objcontact.CurrencyIsoCode = 'AUD';
             objcontact.Account = objAccount ;
             insert objContact ;
			 
	         opportunity objopportunity= new opportunity ();
             objopportunity.Name = 'Hindi2014';
             objopportunity.CloseDate = System.Today();
             objopportunity.Account = objAccount;
             objopportunity.Buyer__c = objcontact.id;
             objopportunity.Vendor__c = objaccount.id;
             objopportunity.StageName = 'Prposal Sent';
             objopportunity.Billing_Terms__c = 'On Completion';              
             objopportunity.Type = 'New Business';
             insert Objopportunity;
		  
          dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
          objdocusign.dsfs__Opportunity__c=objopportunity.id;
		  objdocusign.dsfs__Date_Declined__c=System.today();
          insert objdocusign;

		 		 
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;

			         
		  dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];
		 
		 
		 Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
         objOpp.StageName = 'Closed Lost (Cancelled)';
         update objOpp;

          
        
     }
	 
  }


All Answers

Daniel B ProbertDaniel B Probert
not sure why you're getting 0 from what i can tell you should be getting some coverage.

when you run the test are you getting any errors?

also one thing I've noticed is that your not performing and update on the docusign_recipient_status nor do you have an system.assetequals in there to verfiy that you're getting what you need from it.

if you go to the dev console then just run this test - check to see if it shows any errors like required field missing or something like that. post based that result and i'll see if i can help you.

one thing i've noticed is that your not testing the else statement so you could do that as a part of the update to set the declined date.
Arunkumar RArunkumar R
You can try this one,
@isTest
public class chekDocSignTracker
{
   Static testmethod void insertRecordwithDateSigned()
    {
			 Account objAccount = new Account();
             objAccount.Name = 'Vivek';
             objAccount.Type = 'Supplier';
             objAccount.Phone = '1234';
             objAccount.CurrencyIsoCode = 'AUD';
             insert objAccount;
            
             Contact objcontact = new contact();
             objcontact.LastName = 'Singh';
             objcontact.CurrencyIsoCode = 'AUD';
             objcontact.Account = objAccount ;
             insert objContact ;
			 
	         opportunity objopportunity= new opportunity ();
             objopportunity.Name = 'Hindi2014';
             objopportunity.CloseDate = System.Today();
             objopportunity.Account = objAccount;
             objopportunity.Buyer__c = objcontact.id;
             objopportunity.Vendor__c = objaccount.id;
             objopportunity.StageName = 'Prposal Sent';
             objopportunity.Billing_Terms__c = 'On Completion';              
             objopportunity.Type = 'New Business';
             insert Objopportunity;
		  
          dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
          objdocusign.dsfs__Opportunity__c=objopportunity.id;
		  objdocusign.dsfs__Date_Signed__c=System.today();
          insert objdocusign;

		 		 
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;

			         
		  dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];
		 
		 
		 Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
         objOpp.StageName = 'Closed Won - Signed';
         update objOpp;

          
        
     }
	 
	  Static testmethod void insertRecordwithDateDeclined()
    {
			 Account objAccount = new Account();
             objAccount.Name = 'Vivek';
             objAccount.Type = 'Supplier';
             objAccount.Phone = '1234';
             objAccount.CurrencyIsoCode = 'AUD';
             insert objAccount;
            
             Contact objcontact = new contact();
             objcontact.LastName = 'Singh';
             objcontact.CurrencyIsoCode = 'AUD';
             objcontact.Account = objAccount ;
             insert objContact ;
			 
	         opportunity objopportunity= new opportunity ();
             objopportunity.Name = 'Hindi2014';
             objopportunity.CloseDate = System.Today();
             objopportunity.Account = objAccount;
             objopportunity.Buyer__c = objcontact.id;
             objopportunity.Vendor__c = objaccount.id;
             objopportunity.StageName = 'Prposal Sent';
             objopportunity.Billing_Terms__c = 'On Completion';              
             objopportunity.Type = 'New Business';
             insert Objopportunity;
		  
          dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
          objdocusign.dsfs__Opportunity__c=objopportunity.id;
		  objdocusign.dsfs__Date_Declined__c=System.today();
          insert objdocusign;

		 		 
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;

			         
		  dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];
		 
		 
		 Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
         objOpp.StageName = 'Closed Lost (Cancelled)';
         update objOpp;

          
        
     }
	 
  }


This was selected as the best answer
vivek singh08481200707119766vivek singh08481200707119766
Arun sir when we put this code
Error massage -----Error: Compile Error: Invalid field dsfs__Date_Declined__c for SObject dsfs__DocuSign_Status__c at line 32 column 11.this code we put
__________________________________________
@isTest
public class chekDocSignTracker
{
              Static testmethod void insertRecordwithDateDeclined()     {
              Account objAccount = new Account();            
              objAccount.Name = 'Vivek';
              objAccount.Type = 'Supplier';            
              objAccount.Phone = '1234';
              objAccount.CurrencyIsoCode = 'AUD';
              insert objAccount;
            
             Contact objcontact = new contact();
             objcontact.LastName = 'Singh';      
             objcontact.CurrencyIsoCode = 'AUD';
             objcontact.Account = objAccount ;
              insert objContact ;
             
              opportunity objopportunity= new opportunity ();
            objopportunity.Name = 'Hindi2014';
              objopportunity.CloseDate = System.Today();
              objopportunity.Account = objAccount;
              objopportunity.Buyer__c = objcontact.id;
              objopportunity.Vendor__c = objaccount.id;
              objopportunity.StageName = 'Prposal Sent';
              objopportunity.Billing_Terms__c = 'On Completion';
              objopportunity.Type = 'New Business';
             insert Objopportunity;
          
          dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();        
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
           objdocusign.dsfs__Opportunity__c=objopportunity.id;
          objdocusign.dsfs__Date_Declined__c=System.today();
          insert objdocusign;

                  
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';          
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;
          dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];
          Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
          objOpp.StageName = 'Closed Lost (Cancelled)';
          update objOpp;
 
          
        
     }
         }
vivek singh08481200707119766vivek singh08481200707119766
And we put on his code then --------
(System.DmlException: Insert failed. First exception on row 0; first error: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY, chekDocSign: execution of AfterInsert

caused by: System.DmlException: Update failed. First exception on row 0 with id 00611000003ahRnAAI; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, You must add at least one (non forecast) product to this opportunity before it can be Closed Won.: []

Trigger.chekDocSign: line 7, column 1: []).............please solve the problem
*****************************************************************************************************************************************************
@isTest
public class chekDocSignTracker
{
   Static testmethod void insertRecordwithDateSigned()
    {
      Account objAccount = new Account();
      objAccount.Name = 'Vivek';
      objAccount.Type = 'Supplier';
      objAccount.Phone = '1234';
     objAccount.CurrencyIsoCode = 'AUD';
insert objAccount;

    Contact objcontact = new contact();
   objcontact.LastName = 'Singh';
   objcontact.CurrencyIsoCode = 'AUD';
   objcontact.Account = objAccount ;
  insert objContact;

opportunity objopportunity= new opportunity ();
objopportunity.Name = 'Hindi2014';
objopportunity.CloseDate = System.Today();
objopportunity.Account = objAccount;
objopportunity.Buyer__c = objcontact.id;
objopportunity.Vendor__c = objaccount.id;
objopportunity.StageName = 'Prposal Sent';
objopportunity.Billing_Terms__c = 'On Completion';              
objopportunity.Type = 'New Business';
insert Objopportunity;
    
   
       dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
          objdocusign.dsfs__Opportunity__c=objopportunity.id;
          insert objdocusign;
         
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;
         
          
        
     }
  }
vivek singh08481200707119766vivek singh08481200707119766
HI Arun sir when we put u code no error massage code save but when we check in console  error massage  is given please check
_______________________________________________________________________________________________
System.DmlException: Insert failed. First exception on row 0; first error: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY, chekDocSign: execution of AfterInsert

caused by: System.DmlException: Update failed. First exception on row 0 with id 00611000003ahTUAAY; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, You must add at least one (non forecast) product to this opportunity before it can be Closed Won.: []

Trigger.chekDocSign: line 7, column 1: []
put u code
=====
@isTest
public class chekDocSignTracker
{
              Static testmethod void insertRecordwithDateDeclined()  
                {
              Account objAccount = new Account();            
              objAccount.Name = 'Vivek';
              objAccount.Type = 'Supplier';            
              objAccount.Phone = '1234';
              objAccount.CurrencyIsoCode = 'AUD';
              insert objAccount;
            
             Contact objcontact = new contact();
             objcontact.LastName = 'Singh';      
             objcontact.CurrencyIsoCode = 'AUD';
             objcontact.Account = objAccount ;
              insert objContact ;
             
              opportunity objopportunity= new opportunity ();
              objopportunity.Name = 'Hindi2014';
              objopportunity.CloseDate = System.Today();
              objopportunity.Account = objAccount;
              objopportunity.Buyer__c = objcontact.id;
              objopportunity.Vendor__c = objaccount.id;
              objopportunity.StageName = 'Prposal Sent';
              objopportunity.Billing_Terms__c = 'On Completion';
              objopportunity.Type = 'New Business';
             insert Objopportunity;
          
          dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();        
          objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
           objdocusign.dsfs__Opportunity__c=objopportunity.id;
           insert objdocusign;

                  
          dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
          objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
          objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
          objdocuRsign.Name = 'Test';          
          objdocuRsign.dsfs__Date_Signed__c = System.Today();
          insert objdocuRsign ;
          dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];
          Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
          objOpp.StageName = 'Closed Lost (Cancelled)';
          update objOpp;
 
          
        
     }
         }
vivek singh08481200707119766vivek singh08481200707119766
This time code coverage is increse 56 % Thanks Arun sir
Arunkumar RArunkumar R
Hi Vivek,

Based on the above two issues i have altered test class. I am not preety sure what type of field you are using, if you found any field does not exist error then change the accurate field name that you have... Try this below code..

@isTest
public class chekDocSignTracker
{
	Static testmethod void insertRecordwithDateSigned()
	{
		Account objAccount = new Account();
		objAccount.Name = 'Vivek';
		objAccount.Type = 'Supplier';
		objAccount.Phone = '1234';
		objAccount.CurrencyIsoCode = 'AUD';
		insert objAccount;

		Contact objcontact = new contact();
		objcontact.LastName = 'Singh';
		objcontact.CurrencyIsoCode = 'AUD';
		objcontact.Account = objAccount ;
		insert objContact ;


		PriceBook2 customPriceBook = new PriceBook2();
		customPriceBook.Name='Custom Pricebook';
		customPriceBook.IsActive=true;
		insert customPriceBook;

		Product2 pr = new Product2();
		pr.Name='Moto - G1';
		pr.isActive=true;
		insert pr;

		Pricebook2 customPriceBookRec=[select Id from Pricebook2 where id=:customPriceBook.Id];
		Pricebook2 stdPriceBookRec=[select Id from Pricebook2 where isStandard=true];

		PriceBookEntry stdPriceBookEntry = new PriceBookEntry();
		stdPriceBookEntry.Product2Id=pr.Id;
		stdPriceBookEntry.Pricebook2Id=stdPriceBookRec.Id;
		stdPriceBookEntry.UnitPrice=2000;
		stdPriceBookEntry.IsActive=true;
		insert stdPriceBookEntry;

		PriceBookEntry customPriceBookEntry = new PriceBookEntry();
		customPriceBookEntry.Product2Id=pr.Id;
		customPriceBookEntry.Pricebook2Id=customPriceBookRec.Id;
		customPriceBookEntry.UnitPrice=5000;
		customPriceBookEntry.IsActive=true;
		insert customPriceBookEntry;


		opportunity objopportunity= new opportunity ();
		objopportunity.Name = 'Hindi2014';
		objopportunity.CloseDate = System.Today();
		objopportunity.Account = objAccount.Id;
		objopportunity.Buyer__c = objcontact.id;
		objopportunity.Vendor__c = objaccount.id;
		objopportunity.StageName = 'Proposal Sent';
		objopportunity.Billing_Terms__c = 'On Completion';              
		objopportunity.Type = 'New Business';
		insert Objopportunity;


		OpportunityLineItem oppLineItem = new OpportunityLineItem();
		oppLineItem.OpportunityId = Objopportunity.Id;
		oppLineItem.PricebookEntryId = customPriceBookEntry.Id;
		oppLineItem.UnitPrice = 7000;
		oppLineItem.Quantity = 5;
		insert oppLineItem;



		dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
		objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
		objdocusign.dsfs__Opportunity__c=objopportunity.id;
		objdocusign.dsfs__Date_Signed__c=System.today();
		insert objdocusign;


		dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
		objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
		objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
		objdocuRsign.Name = 'Test';
		objdocuRsign.dsfs__Date_Signed__c = System.Today();
		insert objdocuRsign ;


		dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];


		Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
		objOpp.StageName = 'Closed Won - Signed';
		update objOpp;



	}

	Static testmethod void insertRecordwithDateDeclined()
	{
		Account objAccount = new Account();
		objAccount.Name = 'Vivek';
		objAccount.Type = 'Supplier';
		objAccount.Phone = '1234';
		objAccount.CurrencyIsoCode = 'AUD';
		insert objAccount;

		Contact objcontact = new contact();
		objcontact.LastName = 'Singh';
		objcontact.CurrencyIsoCode = 'AUD';
		objcontact.Account = objAccount ;
		insert objContact ;

		opportunity objopportunity= new opportunity ();
		objopportunity.Name = 'Hindi2014';
		objopportunity.CloseDate = System.Today();
		objopportunity.Account = objAccount;
		objopportunity.Buyer__c = objcontact.id;
		objopportunity.Vendor__c = objaccount.id;
		objopportunity.StageName = 'Prposal Sent';
		objopportunity.Billing_Terms__c = 'On Completion';              
		objopportunity.Type = 'New Business';
		insert Objopportunity;

		dsfs__DocuSign_Status__c objdocusign= new dsfs__DocuSign_Status__c();
		objdocusign.dsfs__DocuSign_Envelope_ID__c = '1234';
		objdocusign.dsfs__Opportunity__c=objopportunity.id;
		objdocusign.dsfs__Date_Declined__c =System.today();
		insert objdocusign;


		dsfs__DocuSign_Recipient_Status__c objdocuRsign = new dsfs__DocuSign_Recipient_Status__c();
		objdocuRsign.dsfs__Parent_Status_Record__c = objdocusign.ID;
		objdocuRsign.dsfs__DocuSign_Recipient_Id__c = '1234';
		objdocuRsign.Name = 'Test';
		objdocuRsign.dsfs__Date_Signed__c = System.Today();
		insert objdocuRsign ;


		dsfs__DocuSign_Recipient_Status__c objDRS = [select dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id from dsfs__DocuSign_Recipient_Status__c where id =: objdocusign.Id limit 1];


		Opportunity objOpp = [select id, StageName from Opportunity where id =: objDRS.dsfs__Parent_Status_Record__r.dsfs__Opportunity__r.id limit 1];
		objOpp.StageName = 'Closed Lost (Cancelled)';
		update objOpp;



	}

}