1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
<?php
/**
* Test: Nette\Utils\DateTime::relativeToSeconds()
*/
declare(strict_types=1);
use Nette\Utils\DateTime;
use Tester\Assert;
require __DIR__ . '/../bootstrap.php';
date_default_timezone_set('Europe/Prague');
test('relativeToSeconds basic usage', function () {
Assert::same(60, DateTime::relativeToSeconds('1 minute'));
Assert::same(600, DateTime::relativeToSeconds('10 minutes'));
Assert::same(-60, DateTime::relativeToSeconds('-1 minute'));
Assert::same(3600, DateTime::relativeToSeconds('+1 hour'));
Assert::same(0, DateTime::relativeToSeconds('now'));
});
test('relativeToSeconds throws on invalid', function () {
Assert::exception(
fn() => DateTime::relativeToSeconds('nonsense'),
Throwable::class,
'%a?%Failed to parse time string %a%',
);
Assert::exception(
fn() => DateTime::relativeToSeconds('1 minu'),
Throwable::class,
);
});
|