raoul2000\workflow\events\WorkflowEvent::afterEnterStatus PHP Method

afterEnterStatus() public static method

Create name for a *after enter status* event.
public static afterEnterStatus ( string $status = self::ANY_STATUS ) : string
$status string the status name or any status if not set
return string name of the event
    public static function afterEnterStatus($status = self::ANY_STATUS)
    {
        self::_checkNonEmptyString('status', $status);
        return 'afterEnterStatus{' . $status . '}';
    }

Usage Example

 public function testChangeStatusEventOnSaveSuccess()
 {
     $this->model->on(WorkflowEvent::beforeEnterStatus(), function ($event) {
         $this->eventsBefore[] = $event;
     });
     $this->model->on(WorkflowEvent::afterEnterStatus(), function ($event) {
         $this->eventsAfter[] = $event;
     });
     verify('event handler handlers have been called', count($this->eventsBefore) == 0 && count($this->eventsAfter) == 0)->true();
     $this->model->enterWorkflow();
     verify('current status is set', $this->model->hasWorkflowStatus())->true();
     expect('event handler handlers have been called', count($this->eventsBefore) == 1 && count($this->eventsAfter) == 1)->true();
     $this->model->status = 'Item04Workflow/B';
     verify('save succeeds', $this->model->save())->true();
     expect('model has changed to status B', $this->model->getWorkflowStatus()->getId())->equals('Item04Workflow/B');
     expect('beforeChangeStatus handler has been called', count($this->eventsBefore))->equals(2);
     expect('afterChangeStatus handler has been called', count($this->eventsAfter))->equals(2);
 }
All Usage Examples Of raoul2000\workflow\events\WorkflowEvent::afterEnterStatus