Skip to content

Commit 7c49a99

Browse files
author
vcorre
committed
Update Tests
1 parent 45b6cd5 commit 7c49a99

File tree

2 files changed

+100
-0
lines changed

2 files changed

+100
-0
lines changed

tests/Pheanstalk/PheanstalkTest.php

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use Pheanstalk\Structure\Schedule;
1010
use Pheanstalk\Structure\Task;
1111
use Pheanstalk\Structure\Job;
12+
use Pheanstalk\Structure\TaskInstance;
1213
use Pheanstalk\Structure\TimeSchedule;
1314
use Pheanstalk\Structure\Tube;
1415
use Pheanstalk\Structure\Workflow;
@@ -184,6 +185,28 @@ public function testKill()
184185
$this->killFirstRunningInstance($workflow);
185186
}
186187

188+
/**
189+
* @expectedException \Pheanstalk\Exception\ServerException
190+
*/
191+
public function testShouldFailWithNoPid()
192+
{
193+
$workflow = $this->pheanstalk->createTask('testSleep', 'testGroup', '/bin/sleep 10');
194+
$this->pheanstalk->put($workflow);
195+
$instances = $this->pheanstalk->getWorkflowInstances($workflow, GetWorkflowInstancesCommand::FILTER_EXECUTING);
196+
$this->assertFalse($instances->isEmpty());
197+
/** @var WorkflowInstance $workflowInstance */
198+
$workflowInstance = $instances->filter(function(WorkflowInstance $instance) {
199+
return $instance->getStatus() === 'RUNNING';
200+
})->first();
201+
/** @var JobInstance $jobInstance */
202+
$jobInstance = $workflowInstance->getJobInstances()->first();
203+
$taskInstance = $jobInstance->getTaskInstances()->first();
204+
/** @var$taskInstance TaskInstance */
205+
$taskInstance->setPid(0);
206+
207+
$this->pheanstalk->kill($workflowInstance, $taskInstance);
208+
}
209+
187210
protected function killFirstRunningInstance(Workflow $workflow)
188211
{
189212
try{
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
<?php
2+
3+
namespace Pheanstalk\Structure;
4+
5+
use Doctrine\Common\Collections\ArrayCollection;
6+
use PHPUnit\Framework\TestCase;
7+
8+
class ScheduleTest extends TestCase
9+
{
10+
/** @var Schedule $schedule */
11+
protected $schedule;
12+
13+
protected function setUp()
14+
{
15+
parent::setUp(); // TODO: Change the autogenerated stub
16+
$this->schedule = new Schedule(1, new TimeSchedule());
17+
}
18+
19+
public function testId()
20+
{
21+
$this->assertNull($this->schedule->getId());
22+
$this->schedule->setId(1);
23+
$this->assertSame(1, $this->schedule->getId());
24+
}
25+
26+
public function testActive()
27+
{
28+
$this->schedule->setActive(true);
29+
$this->assertTrue($this->schedule->isActive());
30+
}
31+
32+
public function testComment()
33+
{
34+
$this->assertNull($this->schedule->getComment());
35+
$this->schedule->setComment('1');
36+
$this->assertSame('1', $this->schedule->getComment());
37+
}
38+
39+
public function testHost()
40+
{
41+
$this->assertNull($this->schedule->getHost());
42+
$this->schedule->setHost('1');
43+
$this->assertSame('1', $this->schedule->getHost());
44+
}
45+
46+
public function testNode()
47+
{
48+
$this->schedule->setNode('1');
49+
$this->assertSame('1', $this->schedule->getNode());
50+
}
51+
52+
public function testOnFailure()
53+
{
54+
$this->schedule->setOnFailure('1');
55+
$this->assertSame('1', $this->schedule->getOnFailure());
56+
}
57+
58+
public function testSchedule()
59+
{
60+
$timeSchedule = new TimeSchedule();
61+
$this->schedule->setSchedule($timeSchedule);
62+
$this->assertSame($timeSchedule, $this->schedule->getSchedule());
63+
}
64+
65+
public function testUser()
66+
{
67+
$this->assertNull($this->schedule->getUser());
68+
$this->schedule->setUser('1');
69+
$this->assertSame('1', $this->schedule->getUser());
70+
}
71+
72+
public function testWorkflow()
73+
{
74+
$this->schedule->setWorkflow(1);
75+
$this->assertSame(1, $this->schedule->getWorkflow());
76+
}
77+
}

0 commit comments

Comments
 (0)