setStep('final'); $entityWorkflow->getCurrentStep()->setIsFinal(true); $this->assertTrue($entityWorkflow->isFinal()); } public function testIsFinalizeWith4Steps() { $entityWorkflow = new EntityWorkflow(); $this->assertFalse($entityWorkflow->isFinal()); $entityWorkflow->setStep('two'); $this->assertFalse($entityWorkflow->isFinal()); $entityWorkflow->setStep('previous_final'); $this->assertFalse($entityWorkflow->isFinal()); $entityWorkflow->getCurrentStep()->setIsFinal(true); $entityWorkflow->setStep('final'); $this->assertTrue($entityWorkflow->isFinal()); } public function testIsFreeze() { $entityWorkflow = new EntityWorkflow(); $this->assertFalse($entityWorkflow->isFreeze()); $entityWorkflow->setStep('step_one'); $this->assertFalse($entityWorkflow->isFreeze()); $entityWorkflow->setStep('step_three'); $this->assertFalse($entityWorkflow->isFreeze()); $entityWorkflow->setStep('freezed'); $entityWorkflow->getCurrentStep()->setFreezeAfter(true); $this->assertTrue($entityWorkflow->isFreeze()); $entityWorkflow->setStep('after_freeze'); $this->assertTrue($entityWorkflow->isFreeze()); $this->assertTrue($entityWorkflow->getCurrentStep()->isFreezeAfter()); } }