added activity events for plugins (#2516)
This commit is contained in:
29
tests/Event/AbstractActivityEventTest.php
Normal file
29
tests/Event/AbstractActivityEventTest.php
Normal file
@@ -0,0 +1,29 @@
|
||||
<?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\Event;
|
||||
|
||||
use App\Entity\Activity;
|
||||
use App\Event\AbstractActivityEvent;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use Symfony\Contracts\EventDispatcher\Event;
|
||||
|
||||
abstract class AbstractActivityEventTest extends TestCase
|
||||
{
|
||||
abstract protected function createActivityEvent(Activity $activity): AbstractActivityEvent;
|
||||
|
||||
public function testGetterAndSetter()
|
||||
{
|
||||
$activity = new Activity();
|
||||
$sut = $this->createActivityEvent($activity);
|
||||
|
||||
self::assertInstanceOf(Event::class, $sut);
|
||||
self::assertSame($activity, $sut->getActivity());
|
||||
}
|
||||
}
|
||||
26
tests/Event/ActivityCreateEventTest.php
Normal file
26
tests/Event/ActivityCreateEventTest.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?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\Event;
|
||||
|
||||
use App\Entity\Activity;
|
||||
use App\Event\AbstractActivityEvent;
|
||||
use App\Event\ActivityCreateEvent;
|
||||
|
||||
/**
|
||||
* @covers \App\Event\AbstractActivityEvent
|
||||
* @covers \App\Event\ActivityCreateEvent
|
||||
*/
|
||||
class ActivityCreateEventTest extends AbstractActivityEventTest
|
||||
{
|
||||
protected function createActivityEvent(Activity $activity): AbstractActivityEvent
|
||||
{
|
||||
return new ActivityCreateEvent($activity);
|
||||
}
|
||||
}
|
||||
26
tests/Event/ActivityCreatePostEventTest.php
Normal file
26
tests/Event/ActivityCreatePostEventTest.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?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\Event;
|
||||
|
||||
use App\Entity\Activity;
|
||||
use App\Event\AbstractActivityEvent;
|
||||
use App\Event\ActivityCreatePostEvent;
|
||||
|
||||
/**
|
||||
* @covers \App\Event\AbstractActivityEvent
|
||||
* @covers \App\Event\ActivityCreatePostEvent
|
||||
*/
|
||||
class ActivityCreatePostEventTest extends AbstractActivityEventTest
|
||||
{
|
||||
protected function createActivityEvent(Activity $activity): AbstractActivityEvent
|
||||
{
|
||||
return new ActivityCreatePostEvent($activity);
|
||||
}
|
||||
}
|
||||
26
tests/Event/ActivityCreatePreEventTest.php
Normal file
26
tests/Event/ActivityCreatePreEventTest.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?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\Event;
|
||||
|
||||
use App\Entity\Activity;
|
||||
use App\Event\AbstractActivityEvent;
|
||||
use App\Event\ActivityCreatePreEvent;
|
||||
|
||||
/**
|
||||
* @covers \App\Event\AbstractActivityEvent
|
||||
* @covers \App\Event\ActivityCreatePreEvent
|
||||
*/
|
||||
class ActivityCreatePreEventTest extends AbstractActivityEventTest
|
||||
{
|
||||
protected function createActivityEvent(Activity $activity): AbstractActivityEvent
|
||||
{
|
||||
return new ActivityCreatePreEvent($activity);
|
||||
}
|
||||
}
|
||||
26
tests/Event/ActivityUpdatePostEventTest.php
Normal file
26
tests/Event/ActivityUpdatePostEventTest.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?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\Event;
|
||||
|
||||
use App\Entity\Activity;
|
||||
use App\Event\AbstractActivityEvent;
|
||||
use App\Event\ActivityUpdatePostEvent;
|
||||
|
||||
/**
|
||||
* @covers \App\Event\AbstractActivityEvent
|
||||
* @covers \App\Event\ActivityUpdatePostEvent
|
||||
*/
|
||||
class ActivityUpdatePostEventTest extends AbstractActivityEventTest
|
||||
{
|
||||
protected function createActivityEvent(Activity $activity): AbstractActivityEvent
|
||||
{
|
||||
return new ActivityUpdatePostEvent($activity);
|
||||
}
|
||||
}
|
||||
26
tests/Event/ActivityUpdatePreEventTest.php
Normal file
26
tests/Event/ActivityUpdatePreEventTest.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?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\Event;
|
||||
|
||||
use App\Entity\Activity;
|
||||
use App\Event\AbstractActivityEvent;
|
||||
use App\Event\ActivityUpdatePreEvent;
|
||||
|
||||
/**
|
||||
* @covers \App\Event\AbstractActivityEvent
|
||||
* @covers \App\Event\ActivityUpdatePreEvent
|
||||
*/
|
||||
class ActivityUpdatePreEventTest extends AbstractActivityEventTest
|
||||
{
|
||||
protected function createActivityEvent(Activity $activity): AbstractActivityEvent
|
||||
{
|
||||
return new ActivityUpdatePreEvent($activity);
|
||||
}
|
||||
}
|
||||
35
tests/Event/ReportingEventTest.php
Normal file
35
tests/Event/ReportingEventTest.php
Normal file
@@ -0,0 +1,35 @@
|
||||
<?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\Event;
|
||||
|
||||
use App\Entity\User;
|
||||
use App\Event\ReportingEvent;
|
||||
use App\Reporting\Report;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* @covers \App\Event\ReportingEvent
|
||||
*/
|
||||
class ReportingEventTest extends TestCase
|
||||
{
|
||||
public function testGetterAndSetter()
|
||||
{
|
||||
$user = new User();
|
||||
|
||||
$sut = new ReportingEvent($user);
|
||||
|
||||
self::assertSame($user, $sut->getUser());
|
||||
self::assertEquals([], $sut->getReports());
|
||||
|
||||
$report = new Report('id', 'route', 'label', 'icon');
|
||||
$sut->addReport($report);
|
||||
self::assertSame([$report], $sut->getReports());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user