54 lines
1.4 KiB
PHP
54 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace App\Tests\Sponsors;
|
|
|
|
use App\Sponsors\Model\Sponsor;
|
|
use App\Sponsors\TwigExtension\SponsorsExtension;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class SponsorsTest extends TestCase
|
|
{
|
|
/** @var SponsorsExtension */
|
|
private $extension;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
parent::setUp();
|
|
|
|
$this->extension = new SponsorsExtension();
|
|
}
|
|
|
|
/** @test */
|
|
public function get_sponsors_by_level()
|
|
{
|
|
$data = [
|
|
Sponsor::LEVEL_GOLD => [
|
|
['name' => 'Microserve', 'confirmed' => true],
|
|
],
|
|
Sponsor::LEVEL_SILVER => [
|
|
['name' => 'Drupalize.me', 'confirmed' => true],
|
|
],
|
|
];
|
|
|
|
$sponsors = $this->extension->getSponsors($data, Sponsor::LEVEL_SILVER);
|
|
|
|
$this->assertCount(1, $sponsors);
|
|
$this->assertSame('Drupalize.me', $sponsors[0]['name']);
|
|
}
|
|
|
|
/** @test */
|
|
public function only_confirmed_sponsors_are_returned()
|
|
{
|
|
$data = [
|
|
Sponsor::LEVEL_GOLD => [
|
|
['name' => 'Acquia', 'confirmed' => false],
|
|
['name' => 'Microserve', 'confirmed' => true],
|
|
],
|
|
];
|
|
|
|
$sponsors = $this->extension->getSponsors($data, Sponsor::LEVEL_GOLD);
|
|
|
|
$this->assertCount(1, $sponsors);
|
|
$this->assertSame('Microserve', $sponsors[0]['name']);
|
|
}
|
|
}
|