コード例 #1
0
 public function testChangeStepStatus()
 {
     $message = new Message();
     $message->setFlow(json_encode([1 => array('Module' => 'Account', 'GUID' => 'guid-step-1', 'Datamap' => 'example_datamap', 'Status' => 'Done', 'ErrorID' => null), 2 => array('Module' => 'Opportunity', 'GUID' => 'guid-step-2', 'Datamap' => 'example_datamap', 'Status' => 'Done', 'ErrorID' => null), 3 => array('Module' => 'Opportunity', 'GUID' => 'guid-step-3', 'Datamap' => 'example_datamap', 'Status' => 'In progress', 'ErrorID' => null), 4 => array('Module' => 'Relation', 'GUID' => '', 'SourceModule' => 'Opportunities', 'DestinationModule' => 'Opportunities', 'SourceStep' => 1, 'DestinationStep' => 2, 'Status' => 'New', 'ErrorID' => null)]));
     $steps = $message->getStepsArray();
     $this->assertEquals('Done', $steps[1]['Status']);
     $this->assertEquals('Done', $steps[2]['Status']);
     $this->assertEquals('In progress', $steps[3]['Status']);
     $this->assertEquals('New', $steps[4]['Status']);
     $message->changeStepStatus(2, 'Error');
     $steps = $message->getStepsArray();
     $this->assertEquals('Done', $steps[1]['Status']);
     $this->assertEquals('Error', $steps[2]['Status']);
     $this->assertEquals('In progress', $steps[3]['Status']);
     $this->assertEquals('New', $steps[4]['Status']);
 }