Upgrade tests to PhpUnit 10 (#5252)
This commit is contained in:
@@ -47,7 +47,7 @@ class BillableCalculatorTest extends TestCase
|
||||
self::assertEquals($expected, $timesheet->isBillable());
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
$customerYes = new Customer('foo');
|
||||
$customerYes->setBillable(true);
|
||||
|
||||
@@ -24,11 +24,11 @@ class DurationCalculatorTest extends TestCase
|
||||
{
|
||||
$record = new Timesheet();
|
||||
$record->setBegin(new \DateTime());
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$sut = new DurationCalculator((new RoundingServiceFactory($this))->create());
|
||||
$sut->calculate($record, []);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -39,14 +39,14 @@ class DurationCalculatorTest extends TestCase
|
||||
$record = new Timesheet();
|
||||
$record->setBegin($start);
|
||||
$record->setEnd($end);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$sut = new DurationCalculator((new RoundingServiceFactory($this))->create($rules));
|
||||
$sut->calculate($record, []);
|
||||
$this->assertEquals($expectedDuration, $record->getDuration());
|
||||
self::assertEquals($expectedDuration, $record->getDuration());
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
$start = new \DateTime();
|
||||
$start->setTime(12, 0, 0);
|
||||
|
||||
@@ -49,7 +49,7 @@ class RateCalculatorTest extends TestCase
|
||||
|
||||
$sut = new RateCalculator(new RateService([], $this->getRateRepositoryMock()));
|
||||
$sut->calculate($record, []);
|
||||
$this->assertEquals(50, $record->getRate());
|
||||
self::assertEquals(50, $record->getRate());
|
||||
}
|
||||
|
||||
public function testCalculateWithTimesheetFixedRate(): void
|
||||
@@ -65,10 +65,10 @@ class RateCalculatorTest extends TestCase
|
||||
|
||||
$sut = new RateCalculator(new RateService([], $this->getRateRepositoryMock()));
|
||||
$sut->calculate($record, []);
|
||||
$this->assertEquals(10, $record->getRate());
|
||||
self::assertEquals(10, $record->getRate());
|
||||
}
|
||||
|
||||
public function getRateTestData()
|
||||
public static function getRateTestData()
|
||||
{ // expected, expInt, durat, userH, userIn, timeH, timeF, actH, actIn, actF, proH, proIn, proFi, custH, custIn, custF
|
||||
yield 'a0' => [0.0, 0.0, 0, 0, 0, null, null, null, null, false, null, null, false, null, null, false];
|
||||
yield 'a2' => [0.0, 0.0, 0, 0, null, null, null, null, null, false, null, null, false, null, null, false];
|
||||
@@ -176,8 +176,8 @@ class RateCalculatorTest extends TestCase
|
||||
|
||||
$sut = new RateCalculator(new RateService([], $this->getRateRepositoryMock($rates)));
|
||||
$sut->calculate($timesheet, []);
|
||||
$this->assertEquals($expectedRate, $timesheet->getRate());
|
||||
$this->assertEquals($expectedInternalRate, $timesheet->getInternalRate());
|
||||
self::assertEquals($expectedRate, $timesheet->getRate());
|
||||
self::assertEquals($expectedInternalRate, $timesheet->getInternalRate());
|
||||
}
|
||||
|
||||
protected function getTestUser($rate = 75, $internalRate = 75)
|
||||
@@ -201,11 +201,11 @@ class RateCalculatorTest extends TestCase
|
||||
$record->setHourlyRate(100);
|
||||
$record->setActivity(new Activity());
|
||||
|
||||
$this->assertEquals(0, $record->getRate());
|
||||
self::assertEquals(0, $record->getRate());
|
||||
|
||||
$sut = new RateCalculator(new RateService([], $this->getRateRepositoryMock()));
|
||||
$sut->calculate($record, []);
|
||||
$this->assertEquals(0, $record->getRate());
|
||||
self::assertEquals(0, $record->getRate());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -225,17 +225,17 @@ class RateCalculatorTest extends TestCase
|
||||
$record->setDuration($duration);
|
||||
$record->setActivity(new Activity());
|
||||
|
||||
$this->assertEquals(0, $record->getRate());
|
||||
self::assertEquals(0, $record->getRate());
|
||||
|
||||
$record->setEnd($end);
|
||||
|
||||
$sut = new RateCalculator(new RateService($rules, $this->getRateRepositoryMock()));
|
||||
$sut->calculate($record, []);
|
||||
|
||||
$this->assertEquals($expectedRate, $record->getRate());
|
||||
self::assertEquals($expectedRate, $record->getRate());
|
||||
}
|
||||
|
||||
public function getRuleDefinitions()
|
||||
public static function getRuleDefinitions()
|
||||
{
|
||||
$start = new \DateTime('12:00:00', new \DateTimeZone('UTC'));
|
||||
$day = $start->format('l');
|
||||
|
||||
@@ -21,7 +21,7 @@ class DateTimeFactoryTest extends TestCase
|
||||
{
|
||||
public const TEST_TIMEZONE = 'Europe/London';
|
||||
|
||||
protected function createDateTimeFactory(?string $timezone = null, bool $sunday = false): DateTimeFactory
|
||||
protected static function createDateTimeFactory(?string $timezone = null, bool $sunday = false): DateTimeFactory
|
||||
{
|
||||
if (null === $timezone) {
|
||||
return new DateTimeFactory(null, $sunday);
|
||||
@@ -33,13 +33,13 @@ class DateTimeFactoryTest extends TestCase
|
||||
public function testGetTimezone(): void
|
||||
{
|
||||
$sut = $this->createDateTimeFactory(self::TEST_TIMEZONE);
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $sut->getTimezone()->getName());
|
||||
self::assertEquals(self::TEST_TIMEZONE, $sut->getTimezone()->getName());
|
||||
}
|
||||
|
||||
public function testGetTimezoneWithFallbackTimezone(): void
|
||||
{
|
||||
$sut = $this->createDateTimeFactory();
|
||||
$this->assertEquals(date_default_timezone_get(), $sut->getTimezone()->getName());
|
||||
self::assertEquals(date_default_timezone_get(), $sut->getTimezone()->getName());
|
||||
}
|
||||
|
||||
public function testGetStartOfMonth(): void
|
||||
@@ -48,13 +48,13 @@ class DateTimeFactoryTest extends TestCase
|
||||
|
||||
$sut = $this->createDateTimeFactory(self::TEST_TIMEZONE);
|
||||
$dateTime = $sut->getStartOfMonth();
|
||||
$this->assertEquals(0, $dateTime->format('H'));
|
||||
$this->assertEquals(0, $dateTime->format('i'));
|
||||
$this->assertEquals(0, $dateTime->format('s'));
|
||||
$this->assertEquals(1, $dateTime->format('d'));
|
||||
$this->assertEquals($expected->format('m'), $dateTime->format('m'));
|
||||
$this->assertEquals($expected->format('Y'), $dateTime->format('Y'));
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
self::assertEquals(0, $dateTime->format('H'));
|
||||
self::assertEquals(0, $dateTime->format('i'));
|
||||
self::assertEquals(0, $dateTime->format('s'));
|
||||
self::assertEquals(1, $dateTime->format('d'));
|
||||
self::assertEquals($expected->format('m'), $dateTime->format('m'));
|
||||
self::assertEquals($expected->format('Y'), $dateTime->format('Y'));
|
||||
self::assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
}
|
||||
|
||||
public function testGetEndOfMonth(): void
|
||||
@@ -63,20 +63,20 @@ class DateTimeFactoryTest extends TestCase
|
||||
|
||||
$sut = $this->createDateTimeFactory(self::TEST_TIMEZONE);
|
||||
$dateTime = $sut->getEndOfMonth();
|
||||
$this->assertEquals(23, $dateTime->format('H'));
|
||||
$this->assertEquals(59, $dateTime->format('i'));
|
||||
$this->assertEquals(59, $dateTime->format('s'));
|
||||
$this->assertEquals($expected->format('d'), $dateTime->format('d'));
|
||||
$this->assertEquals($expected->format('m'), $dateTime->format('m'));
|
||||
$this->assertEquals($expected->format('Y'), $dateTime->format('Y'));
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
self::assertEquals(23, $dateTime->format('H'));
|
||||
self::assertEquals(59, $dateTime->format('i'));
|
||||
self::assertEquals(59, $dateTime->format('s'));
|
||||
self::assertEquals($expected->format('d'), $dateTime->format('d'));
|
||||
self::assertEquals($expected->format('m'), $dateTime->format('m'));
|
||||
self::assertEquals($expected->format('Y'), $dateTime->format('Y'));
|
||||
self::assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
}
|
||||
|
||||
public function getStartOfWeekData()
|
||||
public static function getStartOfWeekData()
|
||||
{
|
||||
yield [$this->createDateTimeFactory(self::TEST_TIMEZONE), 'Monday', 23, 1];
|
||||
yield [$this->createDateTimeFactory(self::TEST_TIMEZONE, false), 'Monday', 23, 1];
|
||||
yield [$this->createDateTimeFactory(self::TEST_TIMEZONE, true), 'Sunday', 22, 7];
|
||||
yield [self::createDateTimeFactory(self::TEST_TIMEZONE), 'Monday', 23, 1];
|
||||
yield [self::createDateTimeFactory(self::TEST_TIMEZONE, false), 'Monday', 23, 1];
|
||||
yield [self::createDateTimeFactory(self::TEST_TIMEZONE, true), 'Sunday', 22, 7];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -88,32 +88,32 @@ class DateTimeFactoryTest extends TestCase
|
||||
|
||||
$dateTime = $sut->getStartOfWeek($expected);
|
||||
|
||||
$this->assertEquals(0, $dateTime->format('H'));
|
||||
$this->assertEquals(0, $dateTime->format('i'));
|
||||
$this->assertEquals(0, $dateTime->format('s'));
|
||||
$this->assertEquals($dayNum, $dateTime->format('d'));
|
||||
$this->assertEquals($day, $dateTime->format('N'));
|
||||
$this->assertEquals($dayName, $dateTime->format('l'));
|
||||
$this->assertEquals($expected->format('m'), $dateTime->format('m'));
|
||||
$this->assertEquals($expected->format('Y'), $dateTime->format('Y'));
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
self::assertEquals(0, $dateTime->format('H'));
|
||||
self::assertEquals(0, $dateTime->format('i'));
|
||||
self::assertEquals(0, $dateTime->format('s'));
|
||||
self::assertEquals($dayNum, $dateTime->format('d'));
|
||||
self::assertEquals($day, $dateTime->format('N'));
|
||||
self::assertEquals($dayName, $dateTime->format('l'));
|
||||
self::assertEquals($expected->format('m'), $dateTime->format('m'));
|
||||
self::assertEquals($expected->format('Y'), $dateTime->format('Y'));
|
||||
self::assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
|
||||
$dateTime = $sut->getStartOfWeek();
|
||||
|
||||
$this->assertEquals(0, $dateTime->format('H'));
|
||||
$this->assertEquals(0, $dateTime->format('i'));
|
||||
$this->assertEquals(0, $dateTime->format('s'));
|
||||
$this->assertEquals($day, $dateTime->format('N'));
|
||||
$this->assertEquals($dayName, $dateTime->format('l'));
|
||||
self::assertEquals(0, $dateTime->format('H'));
|
||||
self::assertEquals(0, $dateTime->format('i'));
|
||||
self::assertEquals(0, $dateTime->format('s'));
|
||||
self::assertEquals($day, $dateTime->format('N'));
|
||||
self::assertEquals($dayName, $dateTime->format('l'));
|
||||
// month and year can be different when the week started at the end of the month
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
self::assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
}
|
||||
|
||||
public function getEndOfWeekData()
|
||||
public static function getEndOfWeekData()
|
||||
{
|
||||
yield [$this->createDateTimeFactory(self::TEST_TIMEZONE), 'Sunday', 29, 7];
|
||||
yield [$this->createDateTimeFactory(self::TEST_TIMEZONE, false), 'Sunday', 29, 7];
|
||||
yield [$this->createDateTimeFactory(self::TEST_TIMEZONE, true), 'Saturday', 28, 6];
|
||||
yield [self::createDateTimeFactory(self::TEST_TIMEZONE), 'Sunday', 29, 7];
|
||||
yield [self::createDateTimeFactory(self::TEST_TIMEZONE, false), 'Sunday', 29, 7];
|
||||
yield [self::createDateTimeFactory(self::TEST_TIMEZONE, true), 'Saturday', 28, 6];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -125,38 +125,38 @@ class DateTimeFactoryTest extends TestCase
|
||||
|
||||
$dateTime = $sut->getEndOfWeek($expected);
|
||||
|
||||
$this->assertEquals(23, $dateTime->format('H'));
|
||||
$this->assertEquals(59, $dateTime->format('i'));
|
||||
$this->assertEquals(59, $dateTime->format('s'));
|
||||
$this->assertEquals($dayNum, $dateTime->format('d'));
|
||||
$this->assertEquals($day, $dateTime->format('N'));
|
||||
$this->assertEquals($dayName, $dateTime->format('l'));
|
||||
$this->assertEquals('07', $dateTime->format('m'));
|
||||
$this->assertEquals('2018', $dateTime->format('Y'));
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
self::assertEquals(23, $dateTime->format('H'));
|
||||
self::assertEquals(59, $dateTime->format('i'));
|
||||
self::assertEquals(59, $dateTime->format('s'));
|
||||
self::assertEquals($dayNum, $dateTime->format('d'));
|
||||
self::assertEquals($day, $dateTime->format('N'));
|
||||
self::assertEquals($dayName, $dateTime->format('l'));
|
||||
self::assertEquals('07', $dateTime->format('m'));
|
||||
self::assertEquals('2018', $dateTime->format('Y'));
|
||||
self::assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
|
||||
$dateTime = $sut->getEndOfWeek();
|
||||
|
||||
$this->assertEquals(23, $dateTime->format('H'));
|
||||
$this->assertEquals(59, $dateTime->format('i'));
|
||||
$this->assertEquals(59, $dateTime->format('s'));
|
||||
$this->assertEquals($day, $dateTime->format('N'));
|
||||
$this->assertEquals($dayName, $dateTime->format('l'));
|
||||
self::assertEquals(23, $dateTime->format('H'));
|
||||
self::assertEquals(59, $dateTime->format('i'));
|
||||
self::assertEquals(59, $dateTime->format('s'));
|
||||
self::assertEquals($day, $dateTime->format('N'));
|
||||
self::assertEquals($dayName, $dateTime->format('l'));
|
||||
// month and year can be different when the week started at the end of the month
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
self::assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
}
|
||||
|
||||
public function testCreateDateTime(): void
|
||||
{
|
||||
$sut = $this->createDateTimeFactory(self::TEST_TIMEZONE);
|
||||
$dateTime = $sut->createDateTime('2015-07-24 13:45:21');
|
||||
$this->assertEquals(13, $dateTime->format('H'));
|
||||
$this->assertEquals(45, $dateTime->format('i'));
|
||||
$this->assertEquals(21, $dateTime->format('s'));
|
||||
$this->assertEquals('24', $dateTime->format('d'));
|
||||
$this->assertEquals('07', $dateTime->format('m'));
|
||||
$this->assertEquals('2015', $dateTime->format('Y'));
|
||||
$this->assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
self::assertEquals(13, $dateTime->format('H'));
|
||||
self::assertEquals(45, $dateTime->format('i'));
|
||||
self::assertEquals(21, $dateTime->format('s'));
|
||||
self::assertEquals('24', $dateTime->format('d'));
|
||||
self::assertEquals('07', $dateTime->format('m'));
|
||||
self::assertEquals('2015', $dateTime->format('Y'));
|
||||
self::assertEquals(self::TEST_TIMEZONE, $dateTime->getTimezone()->getName());
|
||||
}
|
||||
|
||||
public function testCreateDateTimeWithDefaultValue(): void
|
||||
@@ -167,7 +167,7 @@ class DateTimeFactoryTest extends TestCase
|
||||
$dateTime = $sut->createDateTime();
|
||||
$difference = $expected->getTimestamp() - $dateTime->getTimestamp();
|
||||
// poor test, but there shouldn't be more than 2 seconds between the creation of two DateTime objects
|
||||
$this->assertTrue(2 >= $difference);
|
||||
self::assertTrue(2 >= $difference);
|
||||
}
|
||||
|
||||
public function testCreateStartOfFinancialYearWithoutConfig(): void
|
||||
|
||||
@@ -103,7 +103,7 @@ class LockdownServiceTest extends TestCase
|
||||
}
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
// changing before last dockdown period is not allowed
|
||||
yield [false, '-5 days', '+5 days', true];
|
||||
@@ -140,7 +140,7 @@ class LockdownServiceTest extends TestCase
|
||||
}
|
||||
}
|
||||
|
||||
public function getConfigTestData()
|
||||
public static function getConfigTestData()
|
||||
{
|
||||
yield [false, null, null, null, false];
|
||||
yield [false, '+5 days', null, null, false];
|
||||
|
||||
@@ -37,7 +37,7 @@ class RateServiceTest extends TestCase
|
||||
return $mock;
|
||||
}
|
||||
|
||||
private function createDateTime(string $datetime = null): \DateTime
|
||||
private static function createDateTime(string $datetime = null): \DateTime
|
||||
{
|
||||
return new \DateTime($datetime ?? 'now', new \DateTimeZone('UTC'));
|
||||
}
|
||||
@@ -45,7 +45,7 @@ class RateServiceTest extends TestCase
|
||||
public function testCalculateWithTimesheetHourlyRate(): void
|
||||
{
|
||||
$record = new Timesheet();
|
||||
$record->setEnd($this->createDateTime());
|
||||
$record->setEnd(self::createDateTime());
|
||||
$record->setDuration(1800);
|
||||
$record->setHourlyRate(100);
|
||||
$record->setActivity(new Activity());
|
||||
@@ -53,13 +53,13 @@ class RateServiceTest extends TestCase
|
||||
|
||||
$sut = new RateService([], $this->getRateRepositoryMock());
|
||||
$rate = $sut->calculate($record);
|
||||
$this->assertEquals(50, $rate->getRate());
|
||||
self::assertEquals(50, $rate->getRate());
|
||||
}
|
||||
|
||||
public function testCalculateWithTimesheetFixedRate(): void
|
||||
{
|
||||
$record = new Timesheet();
|
||||
$record->setEnd($this->createDateTime());
|
||||
$record->setEnd(self::createDateTime());
|
||||
$record->setDuration(1800);
|
||||
$record->setFixedRate(10);
|
||||
// make sure that fixed rate is always applied, even if hourly rate is set
|
||||
@@ -69,10 +69,10 @@ class RateServiceTest extends TestCase
|
||||
|
||||
$sut = new RateService([], $this->getRateRepositoryMock());
|
||||
$rate = $sut->calculate($record);
|
||||
$this->assertEquals(10, $rate->getRate());
|
||||
self::assertEquals(10, $rate->getRate());
|
||||
}
|
||||
|
||||
public function getRateTestData()
|
||||
public static function getRateTestData()
|
||||
{ // expected, expInt, durat, userH, userIn, timeH, timeF, actH, actIn, actF, proH, proIn, proFi, custH, custIn, custF
|
||||
yield 'a0' => [0.0, 0.0, 0, 0, 0, null, null, null, null, false, null, null, false, null, null, false];
|
||||
yield 'a2' => [0.0, 0.0, 0, 0, null, null, null, null, null, false, null, null, false, null, null, false];
|
||||
@@ -137,7 +137,7 @@ class RateServiceTest extends TestCase
|
||||
|
||||
$timesheet = new Timesheet();
|
||||
$timesheet
|
||||
->setEnd($this->createDateTime())
|
||||
->setEnd(self::createDateTime())
|
||||
->setHourlyRate($timesheetHourly)
|
||||
->setFixedRate($timesheetFixed)
|
||||
->setActivity($activity)
|
||||
@@ -180,8 +180,8 @@ class RateServiceTest extends TestCase
|
||||
|
||||
$sut = new RateService([], $this->getRateRepositoryMock($rates));
|
||||
$rate = $sut->calculate($timesheet);
|
||||
$this->assertEquals($expectedRate, $rate->getRate());
|
||||
$this->assertEquals($expectedInternalRate, $rate->getInternalRate());
|
||||
self::assertEquals($expectedRate, $rate->getRate());
|
||||
self::assertEquals($expectedInternalRate, $rate->getInternalRate());
|
||||
}
|
||||
|
||||
protected function getTestUser($rate = 75, $internalRate = 75)
|
||||
@@ -199,17 +199,17 @@ class RateServiceTest extends TestCase
|
||||
public function testCalculateWithEmptyEnd(): void
|
||||
{
|
||||
$record = new Timesheet();
|
||||
$record->setBegin($this->createDateTime());
|
||||
$record->setBegin(self::createDateTime());
|
||||
$record->setDuration(1800);
|
||||
$record->setFixedRate(100);
|
||||
$record->setHourlyRate(100);
|
||||
$record->setActivity(new Activity());
|
||||
|
||||
$this->assertEquals(0, $record->getRate());
|
||||
self::assertEquals(0, $record->getRate());
|
||||
|
||||
$sut = new RateService([], $this->getRateRepositoryMock());
|
||||
$rate = $sut->calculate($record);
|
||||
$this->assertEquals(0, $rate->getRate());
|
||||
self::assertEquals(0, $rate->getRate());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -219,7 +219,7 @@ class RateServiceTest extends TestCase
|
||||
*/
|
||||
public function testCalculateWithRulesByUsersHourlyRate($duration, $rules, $expectedRate): void
|
||||
{
|
||||
$end = $this->createDateTime('12:00:00');
|
||||
$end = self::createDateTime('12:00:00');
|
||||
$start = clone $end;
|
||||
$start->setTimestamp($end->getTimestamp() - $duration);
|
||||
|
||||
@@ -229,19 +229,19 @@ class RateServiceTest extends TestCase
|
||||
$record->setDuration($duration);
|
||||
$record->setActivity(new Activity());
|
||||
|
||||
$this->assertEquals(0, $record->getRate());
|
||||
self::assertEquals(0, $record->getRate());
|
||||
|
||||
$record->setEnd($end);
|
||||
|
||||
$sut = new RateService($rules, $this->getRateRepositoryMock());
|
||||
$rate = $sut->calculate($record);
|
||||
|
||||
$this->assertEquals($expectedRate, $rate->getRate());
|
||||
self::assertEquals($expectedRate, $rate->getRate());
|
||||
}
|
||||
|
||||
public function getRuleDefinitions()
|
||||
public static function getRuleDefinitions()
|
||||
{
|
||||
$start = $this->createDateTime('12:00:00');
|
||||
$start = self::createDateTime('12:00:00');
|
||||
$day = $start->format('l');
|
||||
|
||||
return [
|
||||
|
||||
@@ -26,7 +26,7 @@ class CeilRoundingTest extends TestCase
|
||||
$record = new Timesheet();
|
||||
$record->setBegin($start);
|
||||
$record->setEnd($end);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
|
||||
@@ -37,12 +37,12 @@ class CeilRoundingTest extends TestCase
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
$sut->roundDuration($record, $roundDuration);
|
||||
|
||||
$this->assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
$this->assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
$this->assertEquals($expectedDuration, $record->getDuration());
|
||||
self::assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
self::assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
self::assertEquals($expectedDuration, $record->getDuration());
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
$start = new \DateTime();
|
||||
$start->setTime(12, 0, 0);
|
||||
|
||||
@@ -26,7 +26,7 @@ class ClosestRoundingTest extends TestCase
|
||||
$record = new Timesheet();
|
||||
$record->setBegin($start);
|
||||
$record->setEnd($end);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
|
||||
@@ -37,12 +37,12 @@ class ClosestRoundingTest extends TestCase
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
$sut->roundDuration($record, $roundDuration);
|
||||
|
||||
$this->assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
$this->assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
$this->assertEquals($expectedDuration, $record->getDuration());
|
||||
self::assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
self::assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
self::assertEquals($expectedDuration, $record->getDuration());
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
$start = new \DateTime();
|
||||
$start->setTime(12, 0, 0);
|
||||
|
||||
@@ -26,7 +26,7 @@ class DefaultRoundingTest extends TestCase
|
||||
$record = new Timesheet();
|
||||
$record->setBegin($start);
|
||||
$record->setEnd($end);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
|
||||
@@ -37,12 +37,12 @@ class DefaultRoundingTest extends TestCase
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
$sut->roundDuration($record, $roundDuration);
|
||||
|
||||
$this->assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
$this->assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
$this->assertEquals($expectedDuration, $record->getDuration());
|
||||
self::assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
self::assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
self::assertEquals($expectedDuration, $record->getDuration());
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
$start = new \DateTime();
|
||||
$start->setTime(12, 0, 0);
|
||||
|
||||
@@ -26,7 +26,7 @@ class FloorRoundingTest extends TestCase
|
||||
$record = new Timesheet();
|
||||
$record->setBegin($start);
|
||||
$record->setEnd($end);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
|
||||
@@ -37,12 +37,12 @@ class FloorRoundingTest extends TestCase
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
$sut->roundDuration($record, $roundDuration);
|
||||
|
||||
$this->assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
$this->assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
$this->assertEquals($expectedDuration, $record->getDuration());
|
||||
self::assertEquals($expectedStart->getTimestamp(), $record->getBegin()->getTimestamp());
|
||||
self::assertEquals($expectedEnd->getTimestamp(), $record->getEnd()->getTimestamp());
|
||||
self::assertEquals($expectedDuration, $record->getDuration());
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
$start = new \DateTime();
|
||||
$start->setTime(12, 0, 0);
|
||||
|
||||
@@ -22,11 +22,11 @@ class RoundingServiceTest extends TestCase
|
||||
{
|
||||
$record = new Timesheet();
|
||||
$record->setBegin(new \DateTime());
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$sut = (new RoundingServiceFactory($this))->create();
|
||||
$sut->applyRoundings($record);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -37,22 +37,22 @@ class RoundingServiceTest extends TestCase
|
||||
$record = new Timesheet();
|
||||
$record->setBegin($start);
|
||||
$record->setEnd($end);
|
||||
$this->assertEquals(0, $record->getDuration());
|
||||
self::assertEquals(0, $record->getDuration());
|
||||
|
||||
$sut = (new RoundingServiceFactory($this))->create($rules);
|
||||
$sut->roundBegin($record);
|
||||
$this->assertEquals($expectedStart, $record->getBegin());
|
||||
self::assertEquals($expectedStart, $record->getBegin());
|
||||
$sut->roundEnd($record);
|
||||
$this->assertEquals($expectedEnd, $record->getEnd());
|
||||
self::assertEquals($expectedEnd, $record->getEnd());
|
||||
|
||||
// set the proper duration
|
||||
$record->setDuration($record->getEnd()->getTimestamp() - $record->getBegin()->getTimestamp());
|
||||
|
||||
$sut->roundDuration($record);
|
||||
$this->assertEquals($expectedDuration, $record->getDuration());
|
||||
self::assertEquals($expectedDuration, $record->getDuration());
|
||||
}
|
||||
|
||||
public function getTestData()
|
||||
public static function getTestData()
|
||||
{
|
||||
$start = new \DateTime();
|
||||
$start->setTime(12, 0, 0);
|
||||
|
||||
@@ -18,12 +18,12 @@ use Symfony\Component\HttpFoundation\Request;
|
||||
/**
|
||||
* @covers \App\Timesheet\TrackingMode\AbstractTrackingMode
|
||||
*/
|
||||
abstract class AbstractTrackingModeTest extends TestCase
|
||||
abstract class AbstractTrackingModeTestCase extends TestCase
|
||||
{
|
||||
/**
|
||||
* @return AbstractTrackingMode
|
||||
*/
|
||||
abstract protected function createSut();
|
||||
abstract protected function createSut(string $default = '13:47', bool $allowApiTimes = false);
|
||||
|
||||
protected function createTimesheet(): Timesheet
|
||||
{
|
||||
@@ -16,7 +16,7 @@ use App\Timesheet\TrackingMode\DefaultMode;
|
||||
/**
|
||||
* @covers \App\Timesheet\TrackingMode\DefaultMode
|
||||
*/
|
||||
class DefaultModeTest extends AbstractTrackingModeTest
|
||||
class DefaultModeTest extends AbstractTrackingModeTestCase
|
||||
{
|
||||
public function assertDefaultBegin(Timesheet $timesheet): void
|
||||
{
|
||||
@@ -26,7 +26,7 @@ class DefaultModeTest extends AbstractTrackingModeTest
|
||||
/**
|
||||
* @return DefaultMode
|
||||
*/
|
||||
protected function createSut(): DefaultMode
|
||||
protected function createSut(string $default = '13:47', bool $allowApiTimes = false): DefaultMode
|
||||
{
|
||||
return new DefaultMode((new RoundingServiceFactory($this))->create());
|
||||
}
|
||||
|
||||
@@ -22,10 +22,10 @@ class UtilTest extends TestCase
|
||||
*/
|
||||
public function testCalculateRate(int|float $hourlyRate, int $duration, int|float $expectedRate): void
|
||||
{
|
||||
$this->assertEquals($expectedRate, Util::calculateRate($hourlyRate, $duration));
|
||||
self::assertEquals($expectedRate, Util::calculateRate($hourlyRate, $duration));
|
||||
}
|
||||
|
||||
public function getRateCalculationData()
|
||||
public static function getRateCalculationData()
|
||||
{
|
||||
yield [0, 0, 0];
|
||||
yield [1, 100, 0.0278];
|
||||
|
||||
Reference in New Issue
Block a user