Case Trigger Test failing due to a complex setup
Purpose
When running the Test Helper to test coverage in deploying to a Production environment, users with a complex setup may run into some problems. For example:
This is because currently, the JCFS.JiraTriggerTestHelper.testAfterInsert('<OBJECT_NAME>')
method will generate a random <'OBJECT_NAME'>
and run the generated object.
Answer
Therefore, for more complex object setups, use the JCFS.JiraTriggerTestHelper.testAfterInsert(salesforceObject) method instead.
Here's an example for CaseTriggerTest with a self-created Salesforce Object:
@isTest public class CaseTriggerTest { @isTest static void caseAfterInsertTest(){ SObjectType t = Schema.getGlobalDescribe().get('Case'); SObject obj = t.newSobject(); obj.put('Subject', 'ABC'); // set a valid record JCFS.JiraTriggerTestHelper.testAfterInsert(obj); } @isTest static void caseAfterUpdateTest(){ SObjectType t = Schema.getGlobalDescribe().get('Case'); SObject obj = t.newSobject(); obj.put('Subject', 'ABC'); // set a valid record JCFS.JiraTriggerTestHelper.testAfterUpdate(obj); } }