0
0
Fork 0
mirror of https://github.com/kevinpapst/kimai2.git synced 2025-01-11 20:08:11 +00:00
kevinpapst_kimai2/tests/Mocks/TimesheetTestMetaFieldSubscriberMock.php

45 lines
1.3 KiB
PHP
Raw Normal View History

<?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\Mocks;
use App\Entity\TimesheetMeta;
use App\Event\TimesheetMetaDefinitionEvent;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Validator\Constraints\Length;
class TimesheetTestMetaFieldSubscriberMock implements EventSubscriberInterface
{
public static function getSubscribedEvents(): array
{
return [
TimesheetMetaDefinitionEvent::class => ['loadMeta', 200],
];
}
public function loadMeta(TimesheetMetaDefinitionEvent $event)
{
$definition = (new TimesheetMeta())
->setName('metatestmock')
->setType(TextType::class)
->addConstraint(new Length(['max' => 200]))
->setIsVisible(true);
$event->getEntity()->setMetaField($definition);
$definition = (new TimesheetMeta())
->setName('foobar')
->setType(IntegerType::class)
->setIsVisible(false);
$event->getEntity()->setMetaField($definition);
}
}