1
|
|
|
<?php |
2
|
|
|
|
3
|
|
|
namespace Developtech\AgilityBundle\Tests\Model; |
4
|
|
|
|
5
|
|
|
use Developtech\AgilityBundle\Tests\Mock\Project; |
6
|
|
|
use Developtech\AgilityBundle\Tests\Mock\Feature; |
7
|
|
|
use Developtech\AgilityBundle\Tests\Mock\Feedback; |
8
|
|
|
|
9
|
|
|
class ProjectModelTest extends \PHPUnit_Framework_TestCase { |
10
|
|
|
public function testModel() { |
11
|
|
|
$feedback = new Feedback(); |
12
|
|
|
$feature = new Feature(); |
13
|
|
|
$entity = |
14
|
|
|
(new Project()) |
|
|
|
|
15
|
|
|
->setId(1) |
16
|
|
|
->setName('Great project') |
17
|
|
|
->setSlug('great-project') |
18
|
|
|
->setCreatedAt(new \DateTime()) |
19
|
|
|
->setProductOwner((new \StdClass())) |
20
|
|
|
->setBetaTestStatus('open') |
21
|
|
|
->setNbBetaTesters(12) |
22
|
|
|
->addFeature(new Feature()) |
23
|
|
|
->addFeature($feature) |
24
|
|
|
->removeFeature($feature) |
|
|
|
|
25
|
|
|
->addFeedback($feedback) |
26
|
|
|
->addFeedback(new Feedback()) |
27
|
|
|
->removeFeedback($feedback) |
28
|
|
|
; |
29
|
|
|
$this->assertEquals(1, $entity->getId()); |
30
|
|
|
$this->assertEquals('Great project', $entity->getName()); |
31
|
|
|
$this->assertEquals('great-project', $entity->getSlug()); |
32
|
|
|
$this->assertInstanceOf('DateTime', $entity->getCreatedAt()); |
33
|
|
|
$this->assertInstanceOf('StdClass', $entity->getProductOwner()); |
34
|
|
|
$this->assertEquals('open', $entity->getBetaTestStatus()); |
35
|
|
|
$this->assertEquals(12, $entity->getNbBetaTesters()); |
36
|
|
|
$this->assertFalse($project->hasFeature($feature)); |
|
|
|
|
37
|
|
|
$this->assertFalse($project->hasFeedback($feedback)); |
38
|
|
|
$this->assertCount(1, $project->getFeedbacks()); |
39
|
|
|
$this->assertCount(1, $project->getFeatures()); |
40
|
|
|
} |
41
|
|
|
} |
42
|
|
|
|
This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.
This is most likely a typographical error or the method has been renamed.