0
0
mirror of https://github.com/kevinpapst/kimai2.git synced 2024-12-22 12:18:29 +00:00
kevinpapst_kimai2/tests/Export/TimesheetExportRepositoryTest.php
2024-11-21 22:44:49 +01:00

47 lines
1.4 KiB
PHP

<?php
/*
* This file is part of the Kimai time-tracking app.
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace App\Tests\Export;
use App\Entity\Activity;
use App\Entity\Customer;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Export\TimesheetExportRepository;
use App\Repository\TimesheetRepository;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Export\TimesheetExportRepository
*/
class TimesheetExportRepositoryTest extends TestCase
{
public function testSetExported(): void
{
$repository = $this->createMock(TimesheetRepository::class);
$repository->expects($this->once())->method('setExported')->willReturnCallback(function (array $items) {
self::assertCount(2, $items);
});
$sut = new TimesheetExportRepository($repository);
$sut->setExported([new Timesheet(), null, new \stdClass(), new Timesheet(), new Activity()]);
// test else for empty array
/* @phpstan-ignore argument.type */
$sut->setExported([new Customer('foo'), new Project()]);
}
public function testSetType(): void
{
$repository = $this->createMock(TimesheetRepository::class);
$sut = new TimesheetExportRepository($repository);
self::assertEquals('timesheet', $sut->getType());
}
}