I created a test class to test a trigger and I am getting the following error when trying to deploy the change set. I don't know if the error is with the Test or the change set, error below:
System.AssertException: Assertion Failed Stack Trace: Class.Test_AutoApprove.t1: line 11, column 1
Test is as follows:
@isTest
private class Test_AutoApprove {
static testmethod void t1(){
Site_Call_Performance__c t = new Site_Call_Performance__c(Status__c= 'Submitted');
test.startTest();
insert t;
update t;
test.stopTest();
System.assert(t.Status__c == 'Approved');
}
}
Trigger!
trigger AutoApprovebasedoffCheckbox on Site_Call_Performance__c (after update)
{
List<Approval.ProcessSubmitRequest> reqList = new List<Approval.ProcessSubmitRequest>();
Set<ID> scpIDs = new Set<ID>();
for (Site_Call_Performance__c a : Trigger.new)
{
if (a.Approval_Checkbox__c)
{
scpIDs.add(a.Id);
}
}
Set<Id> pIds = (new Map<Id, ProcessInstance>([SELECT Id,Status,TargetObjectId FROM ProcessInstance where Status='Pending' and TargetObjectId in :scpIds ])).keySet();
Set<Id> pInstanceWorkitems = (new Map<Id, ProcessInstanceWorkitem>([SELECT Id,ProcessInstanceId FROM ProcessInstanceWorkitem WHERE ProcessInstanceId in :pIds])).keySet();
List<Approval.ProcessWorkItemRequest> approve = New List<Approval.ProcessWorkItemRequest>();
for (Id pInstanceWorkitemsId : pInstanceWorkitems)
{
Approval.ProcessWorkitemRequest req = new Approval.ProcessWorkitemRequest();
req.setComments('Auto Approved by System');
req.setAction('Approve');
req.setWorkitemId(pInstanceWorkitemsId);
approve.add(req);
}
List<Approval.ProcessResult> result = Approval.process(approve);
}