chore: reorganizing
This commit is contained in:
56
tests/Provider/GameGridProviderTest.php
Normal file
56
tests/Provider/GameGridProviderTest.php
Normal file
@@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace App\Tests\Provider;
|
||||
|
||||
use App\Entity\Actor;
|
||||
use App\Entity\Award;
|
||||
use App\Entity\AwardType;
|
||||
use App\Entity\GameRow;
|
||||
use App\Repository\ActorRepository;
|
||||
use App\Repository\AwardRepository;
|
||||
use App\Repository\MovieRepository;
|
||||
use App\Repository\MovieRoleRepository;
|
||||
use App\Provider\GameGridProvider;
|
||||
use Doctrine\ORM\EntityManagerInterface;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
class GameGridProviderTest extends TestCase
|
||||
{
|
||||
public function testResolveHintTextForAward(): void
|
||||
{
|
||||
$awardType = new AwardType();
|
||||
$awardType->setName('Oscar')->setPattern('Academy Award');
|
||||
|
||||
$actor = new Actor();
|
||||
$actor->setName('Test Actor');
|
||||
|
||||
$award = new Award();
|
||||
$award->setName('Academy Award for Best Actor');
|
||||
$award->setYear(2020);
|
||||
$award->setActor($actor);
|
||||
$award->setAwardType($awardType);
|
||||
|
||||
$awardRepository = $this->createMock(AwardRepository::class);
|
||||
$awardRepository->method('find')->with(42)->willReturn($award);
|
||||
|
||||
$generator = new GameGridProvider(
|
||||
$this->createMock(ActorRepository::class),
|
||||
$this->createMock(MovieRoleRepository::class),
|
||||
$this->createMock(MovieRepository::class),
|
||||
$awardRepository,
|
||||
$this->createMock(EntityManagerInterface::class),
|
||||
);
|
||||
|
||||
$row = new GameRow();
|
||||
$row->setHintType('award');
|
||||
$row->setHintData('42');
|
||||
|
||||
// Use reflection to test the private resolveHintText method
|
||||
$method = new \ReflectionMethod($generator, 'resolveHintText');
|
||||
$result = $method->invoke($generator, $row);
|
||||
|
||||
$this->assertSame('Academy Award for Best Actor (2020)', $result);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user