replace PHPUnit annotations with attributes (#5608)

This commit is contained in:
Kevin Papst
2025-08-11 18:57:42 +02:00
committed by GitHub
parent 04331420ae
commit 24778d3ffb
599 changed files with 1778 additions and 2313 deletions

View File

@@ -15,18 +15,20 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\ActivityInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\ActivityInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(ActivityInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class ActivityInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,18 +15,20 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\ActivityUserInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\ActivityUserInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(ActivityUserInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class ActivityUserInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,19 +15,21 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\DateInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use DateTime;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\DateInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(DateInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class DateInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,19 +15,21 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\DateUserInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use DateTime;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\DateUserInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(DateUserInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class DateUserInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -14,16 +14,16 @@ use App\Entity\Customer;
use App\Entity\InvoiceTemplate;
use App\Entity\Tag;
use App\Entity\Timesheet;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\DefaultCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\DefaultCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(DefaultCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class DefaultCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,19 +15,21 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\PriceInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use DateTime;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\PriceInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(PriceInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class PriceInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,19 +15,21 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\ProjectInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use DateTime;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\ProjectInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(ProjectInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class ProjectInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,19 +15,21 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\ProjectUserInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use DateTime;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\ProjectUserInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(ProjectUserInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class ProjectUserInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -16,18 +16,19 @@ use App\Entity\Project;
use App\Entity\Tag;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\ShortInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Invoice\InvoiceItem;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\ShortInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(ShortInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class ShortInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,17 +15,18 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\UserInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\UserInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(UserInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class UserInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -15,19 +15,21 @@ use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet;
use App\Entity\User;
use App\Invoice\Calculator\AbstractCalculator;
use App\Invoice\Calculator\AbstractMergedCalculator;
use App\Invoice\Calculator\AbstractSumInvoiceCalculator;
use App\Invoice\Calculator\WeeklyInvoiceCalculator;
use App\Invoice\CalculatorInterface;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use DateTime;
use PHPUnit\Framework\Attributes\CoversClass;
/**
* @covers \App\Invoice\Calculator\WeeklyInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractSumInvoiceCalculator
* @covers \App\Invoice\Calculator\AbstractMergedCalculator
* @covers \App\Invoice\Calculator\AbstractCalculator
*/
#[CoversClass(WeeklyInvoiceCalculator::class)]
#[CoversClass(AbstractSumInvoiceCalculator::class)]
#[CoversClass(AbstractMergedCalculator::class)]
#[CoversClass(AbstractCalculator::class)]
class WeeklyInvoiceCalculatorTest extends AbstractCalculatorTestCase
{
protected function getCalculator(): CalculatorInterface

View File

@@ -11,11 +11,10 @@ namespace App\Tests\Invoice\Hydrator;
use App\Invoice\Hydrator\InvoiceItemDefaultHydrator;
use App\Tests\Invoice\Renderer\RendererTestTrait;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\Hydrator\InvoiceItemDefaultHydrator
*/
#[CoversClass(InvoiceItemDefaultHydrator::class)]
class InvoiceItemDefaultHydratorTest extends TestCase
{
use RendererTestTrait;

View File

@@ -12,11 +12,10 @@ namespace App\Tests\Invoice\Hydrator;
use App\Activity\ActivityStatisticService;
use App\Invoice\Hydrator\InvoiceModelActivityHydrator;
use App\Tests\Invoice\Renderer\RendererTestTrait;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\Hydrator\InvoiceModelActivityHydrator
*/
#[CoversClass(InvoiceModelActivityHydrator::class)]
class InvoiceModelActivityHydratorTest extends TestCase
{
use RendererTestTrait;

View File

@@ -12,11 +12,10 @@ namespace App\Tests\Invoice\Hydrator;
use App\Customer\CustomerStatisticService;
use App\Invoice\Hydrator\InvoiceModelCustomerHydrator;
use App\Tests\Invoice\Renderer\RendererTestTrait;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\Hydrator\InvoiceModelCustomerHydrator
*/
#[CoversClass(InvoiceModelCustomerHydrator::class)]
class InvoiceModelCustomerHydratorTest extends TestCase
{
use RendererTestTrait;

View File

@@ -11,12 +11,11 @@ namespace App\Tests\Invoice\Hydrator;
use App\Invoice\Hydrator\InvoiceModelDefaultHydrator;
use App\Tests\Invoice\Renderer\RendererTestTrait;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
use ReflectionObject;
/**
* @covers \App\Invoice\Hydrator\InvoiceModelDefaultHydrator
*/
#[CoversClass(InvoiceModelDefaultHydrator::class)]
class InvoiceModelDefaultHydratorTest extends TestCase
{
use RendererTestTrait;

View File

@@ -12,11 +12,10 @@ namespace App\Tests\Invoice\Hydrator;
use App\Invoice\Hydrator\InvoiceModelProjectHydrator;
use App\Project\ProjectStatisticService;
use App\Tests\Invoice\Renderer\RendererTestTrait;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\Hydrator\InvoiceModelProjectHydrator
*/
#[CoversClass(InvoiceModelProjectHydrator::class)]
class InvoiceModelProjectHydratorTest extends TestCase
{
use RendererTestTrait;

View File

@@ -11,11 +11,10 @@ namespace App\Tests\Invoice\Hydrator;
use App\Invoice\Hydrator\InvoiceModelUserHydrator;
use App\Tests\Invoice\Renderer\RendererTestTrait;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\Hydrator\InvoiceModelUserHydrator
*/
#[CoversClass(InvoiceModelUserHydrator::class)]
class InvoiceModelUserHydratorTest extends TestCase
{
use RendererTestTrait;

View File

@@ -18,11 +18,10 @@ use App\Invoice\NumberGeneratorInterface;
use App\Repository\InvoiceRepository;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\InvoiceFilename
*/
#[CoversClass(InvoiceFilename::class)]
class InvoiceFilenameTest extends TestCase
{
public function testInvoiceFilename(): void

View File

@@ -10,11 +10,10 @@
namespace App\Tests\Invoice;
use App\Invoice\InvoiceItem;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\InvoiceItem
*/
#[CoversClass(InvoiceItem::class)]
class InvoiceItemTest extends TestCase
{
public function testEmptyObject(): void

View File

@@ -16,11 +16,10 @@ use App\Invoice\InvoiceModel;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\NumberGenerator\IncrementingNumberGenerator;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\InvoiceModel
*/
#[CoversClass(InvoiceModel::class)]
class InvoiceModelTest extends TestCase
{
public function testEmptyObject(): void

View File

@@ -18,12 +18,13 @@ use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use App\Tests\Mocks\SystemConfigurationFactory;
use App\Utils\NumberGenerator;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\NumberGenerator\ConfigurableNumberGenerator
* @covers \App\Utils\NumberGenerator
*/
#[CoversClass(ConfigurableNumberGenerator::class)]
#[CoversClass(NumberGenerator::class)]
class ConfigurableNumberGeneratorTest extends TestCase
{
private function getSut(string $format, int $counter = 1): ConfigurableNumberGenerator
@@ -185,9 +186,7 @@ class ConfigurableNumberGeneratorTest extends TestCase
];
}
/**
* @dataProvider getTestData
*/
#[DataProvider('getTestData')]
public function testGetInvoiceNumber(string $format, string $expectedInvoiceNumber, \DateTime $invoiceDate, int $counter = 1): void
{
$customer = new Customer('Acme company');
@@ -232,9 +231,7 @@ class ConfigurableNumberGeneratorTest extends TestCase
];
}
/**
* @dataProvider getInvalidTestData
*/
#[DataProvider('getInvalidTestData')]
public function testInvalidGetInvoiceNumber(string $format, \DateTime $invoiceDate, string $brokenPart): void
{
$this->expectException(\InvalidArgumentException::class);
@@ -259,9 +256,7 @@ class ConfigurableNumberGeneratorTest extends TestCase
];
}
/**
* @dataProvider getMissingFieldTestData
*/
#[DataProvider('getMissingFieldTestData')]
public function testCustomerHasMissingField(string $format, string $message): void
{
$this->expectException(\InvalidArgumentException::class);

View File

@@ -16,11 +16,10 @@ use App\Repository\InvoiceRepository;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Invoice\DebugFormatter;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
/**
* @covers \App\Invoice\NumberGenerator\DateNumberGenerator
*/
#[CoversClass(DateNumberGenerator::class)]
class DateNumberGeneratorTest extends TestCase
{
private function getSut(bool $hasInitialInvoice, bool $followingInvoices)

View File

@@ -14,6 +14,7 @@ use App\Invoice\InvoiceItemHydrator;
use App\Invoice\InvoiceModel;
use App\Invoice\InvoiceModelHydrator;
use App\Model\InvoiceDocument;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\TestCase;
use Symfony\Component\HttpFoundation\Response;
@@ -27,9 +28,7 @@ class DebugRendererTest extends TestCase
yield [static fn (self $testCase) => $testCase->getInvoiceModelOneEntry(), '293.27', 1, 1, 0, 1, 0, false, []];
}
/**
* @dataProvider getTestModel
*/
#[DataProvider('getTestModel')]
public function testRender(callable $invoiceModel, $expectedRate, $expectedRows, $expectedDescriptions, $expectedUser1, $expectedUser2, $expectedUser3, $hasProject, $metaFields = []): void
{
/** @var InvoiceModel $model */

View File

@@ -9,15 +9,16 @@
namespace App\Tests\Invoice\Renderer;
use App\Invoice\Renderer\AbstractRenderer;
use App\Invoice\Renderer\DocxRenderer;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\Group;
use PHPUnit\Framework\TestCase;
use Symfony\Component\HttpFoundation\BinaryFileResponse;
/**
* @covers \App\Invoice\Renderer\DocxRenderer
* @covers \App\Invoice\Renderer\AbstractRenderer
* @group integration
*/
#[CoversClass(DocxRenderer::class)]
#[CoversClass(AbstractRenderer::class)]
#[Group('integration')]
class DocxRendererTest extends TestCase
{
use RendererTestTrait;

View File

@@ -10,16 +10,19 @@
namespace App\Tests\Invoice\Renderer;
use App\Invoice\InvoiceModel;
use App\Invoice\Renderer\AbstractRenderer;
use App\Invoice\Renderer\AbstractSpreadsheetRenderer;
use App\Invoice\Renderer\OdsRenderer;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\Attributes\Group;
use PHPUnit\Framework\TestCase;
use Symfony\Component\HttpFoundation\BinaryFileResponse;
/**
* @covers \App\Invoice\Renderer\OdsRenderer
* @covers \App\Invoice\Renderer\AbstractRenderer
* @covers \App\Invoice\Renderer\AbstractSpreadsheetRenderer
* @group integration
*/
#[CoversClass(OdsRenderer::class)]
#[CoversClass(AbstractRenderer::class)]
#[CoversClass(AbstractSpreadsheetRenderer::class)]
#[Group('integration')]
class OdsRendererTest extends TestCase
{
use RendererTestTrait;
@@ -42,9 +45,7 @@ class OdsRendererTest extends TestCase
yield [static fn (self $testCase) => $testCase->getInvoiceModelOneEntry(), '293.27', 2, 1, 0, 1, 0];
}
/**
* @dataProvider getTestModel
*/
#[DataProvider('getTestModel')]
public function testRender(callable $invoiceModel, $expectedRate, $expectedRows, $expectedDescriptions, $expectedUser1, $expectedUser2, $expectedUser3): void
{
/** @var InvoiceModel $model */

View File

@@ -9,11 +9,14 @@
namespace App\Tests\Invoice\Renderer;
use App\Invoice\Renderer\AbstractTwigRenderer;
use App\Invoice\Renderer\PdfRenderer;
use App\Model\InvoiceDocument;
use App\Pdf\HtmlToPdfConverter;
use App\Pdf\MPdfConverter;
use App\Tests\Mocks\FileHelperFactory;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\Group;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\RequestStack;
@@ -21,11 +24,9 @@ use Twig\Environment;
use Twig\Loader\ArrayLoader;
use Twig\Loader\FilesystemLoader;
/**
* @covers \App\Invoice\Renderer\AbstractTwigRenderer
* @covers \App\Invoice\Renderer\PdfRenderer
* @group integration
*/
#[CoversClass(AbstractTwigRenderer::class)]
#[CoversClass(PdfRenderer::class)]
#[Group('integration')]
class PdfRendererTest extends KernelTestCase
{
use RendererTestTrait;

View File

@@ -9,19 +9,20 @@
namespace App\Tests\Invoice\Renderer;
use App\Invoice\Renderer\AbstractTwigRenderer;
use App\Invoice\Renderer\TwigRenderer;
use App\Model\InvoiceDocument;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\Group;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\RequestStack;
use Twig\Environment;
use Twig\Loader\FilesystemLoader;
/**
* @covers \App\Invoice\Renderer\AbstractTwigRenderer
* @covers \App\Invoice\Renderer\TwigRenderer
* @group integration
*/
#[CoversClass(AbstractTwigRenderer::class)]
#[CoversClass(TwigRenderer::class)]
#[Group('integration')]
class TwigRendererTest extends KernelTestCase
{
use RendererTestTrait;

View File

@@ -10,17 +10,21 @@
namespace App\Tests\Invoice\Renderer;
use App\Invoice\InvoiceModel;
use App\Invoice\Renderer\AbstractRenderer;
use App\Invoice\Renderer\AbstractSpreadsheetRenderer;
use App\Invoice\Renderer\AdvancedValueBinder;
use App\Invoice\Renderer\XlsxRenderer;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\Attributes\Group;
use PHPUnit\Framework\TestCase;
use Symfony\Component\HttpFoundation\BinaryFileResponse;
/**
* @covers \App\Invoice\Renderer\XlsxRenderer
* @covers \App\Invoice\Renderer\AbstractRenderer
* @covers \App\Invoice\Renderer\AbstractSpreadsheetRenderer
* @covers \App\Invoice\Renderer\AdvancedValueBinder
* @group integration
*/
#[CoversClass(XlsxRenderer::class)]
#[CoversClass(AbstractRenderer::class)]
#[CoversClass(AbstractSpreadsheetRenderer::class)]
#[CoversClass(AdvancedValueBinder::class)]
#[Group('integration')]
class XlsxRendererTest extends TestCase
{
use RendererTestTrait;
@@ -43,9 +47,7 @@ class XlsxRendererTest extends TestCase
yield [static fn (self $testCase) => $testCase->getInvoiceModelOneEntry(), '293.27', 2, 1, 0, 1, 0];
}
/**
* @dataProvider getTestModel
*/
#[DataProvider('getTestModel')]
public function testRender(callable $invoiceModel, $expectedRate, $expectedRows, $expectedDescriptions, $expectedUser1, $expectedUser2, $expectedUser3): void
{
/** @var InvoiceModel $model */

View File

@@ -27,12 +27,11 @@ use App\Repository\InvoiceRepository;
use App\Repository\Query\InvoiceQuery;
use App\Tests\Mocks\InvoiceModelFactoryFactory;
use App\Utils\FileHelper;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\TestCase;
use Twig\Environment;
/**
* @covers \App\Invoice\ServiceInvoice
*/
#[CoversClass(ServiceInvoice::class)]
class ServiceInvoiceTest extends TestCase
{
private function getSut(array $paths): ServiceInvoice