AbstractProcessInstance implements ProcessInstance<T> { @Override public void startFrom(String nodeId) { startFrom(nodeId, null); } AbstractProcessInstance(AbstractProcess<T> process, T variables, ProcessRuntime rt);  AbstractProcessInstance(AbstractProcess<T> process, T variables, String businessKey, ProcessRuntime rt);  AbstractProcessInstance(AbstractProcess<T> process, T variables, org.kie.api.runtime.process.WorkflowProcessInstance wpi);  AbstractProcessInstance(AbstractProcess<T> process, T variables, ProcessRuntime rt, org.kie.api.runtime.process.WorkflowProcessInstance wpi); WorkflowProcessInstance internalGetProcessInstance(); void internalRemoveProcessInstance(Supplier<WorkflowProcessInstance> reloadSupplier); @Override void start(); @Override void start(String trigger, String referenceId); @Override void abort(); @Override void send(Signal<S> signal); @Override Process<T> process(); @Override T variables(); @Override int status(); @Override String id(); @Override String businessKey(); @Override String description(); @Override Date startDate(); @Override T updateVariables(T updates); @Override Optional<ProcessError> error(); @Override void startFrom(String nodeId); @Override void startFrom(String nodeId, String referenceId); @Override void triggerNode(String nodeId); @Override void cancelNodeInstance(String nodeInstanceId); @Override void retriggerNodeInstance(String nodeInstanceId); @Override WorkItem workItem(String workItemId, Policy<?>... policies); @Override List<WorkItem> workItems(Policy<?>... policies); @Override void completeWorkItem(String id, Map<String, Object> variables, Policy<?>... policies); @Override void abortWorkItem(String id, Policy<?>... policies); @Override void transitionWorkItem(String id, Transition<?> transition); @Override Set<EventDescription<?>> events(); @Override Collection<Milestone> milestones(); @Override Collection<AdHocFragment> adHocFragments(); @Override int hashCode(); @SuppressWarnings("rawtypes") @Override boolean equals(Object obj);  }
@Test public void shouldTriggerNodeWhenStartFrom() { NodeInstance nodeInstance = givenExistingNode(NODE_ID); processInstance.startFrom(NODE_ID); verify(nodeInstance).trigger(null, org.jbpm.workflow.core.Node.CONNECTION_DEFAULT_TYPE); verify(unitOfWork).intercept(any()); }