Compare commits

..

2 Commits

3 changed files with 30 additions and 31 deletions

View File

@ -1,27 +1,14 @@
<?xml version="1.0"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd"
backupGlobals="false" backupStaticAttributes="false"
beStrictAboutChangesToGlobalState="true" beStrictAboutOutputDuringTests="true" beStrictAboutResourceUsageDuringSmallTests="true" beStrictAboutTodoAnnotatedTests="true" beStrictAboutCoversAnnotation="false"
bootstrap="tests/bootstrap.php"
cacheResult="false"
colors="true"
convertErrorsToExceptions="true" convertDeprecationsToExceptions="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true"
enforceTimeLimit="true"
failOnWarning="true"
forceCoversAnnotation="false"
processIsolation="true"
stopOnError="true" stopOnFailure="true" stopOnIncomplete="true" stopOnSkipped="true" stopOnRisky="true"
testdox="true"
timeoutForSmallTests="1" timeoutForMediumTests="10" timeoutForLargeTests="60"
verbose="true">
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.4/phpunit.xsd" backupGlobals="false" beStrictAboutChangesToGlobalState="true" beStrictAboutOutputDuringTests="true" bootstrap="tests/bootstrap.php" cacheResult="false" colors="true" enforceTimeLimit="true" failOnWarning="true" processIsolation="true" stopOnError="true" stopOnFailure="true" stopOnIncomplete="true" stopOnSkipped="true" stopOnRisky="true" testdox="false" timeoutForSmallTests="1" timeoutForMediumTests="10" timeoutForLargeTests="60" cacheDirectory=".phpunit.cache" backupStaticProperties="false" requireCoverageMetadata="false" beStrictAboutCoverageMetadata="false">
<testsuites>
<testsuite name="tests">
<directory>tests/</directory>
</testsuite>
</testsuites>
<coverage>
<coverage/>
<source>
<include>
<directory suffix=".php">src</directory>
</include>
</coverage>
</source>
</phpunit>

View File

@ -507,7 +507,7 @@ final class NodaTimeSplitter {
if (strlen($datum) <= 9) return [];
// The year is only parse-able if it is a four digit year at the start
if (self::is_numeric((string)\substr($datum, 0, 4))) {
if (self::is_numeric((string)\substr($datum, 0, 4)) && substr($datum, 4, 1) === '.') {
$year = \substr($datum, 0, 4);
}
@ -1114,11 +1114,21 @@ final class NodaTimeSplitter {
public static function attempt_splitting(string $datum):array {
$moda = NodaTimeSplitter::is_timespan($datum);
if (!$moda) $moda = NodaTimeSplitter::is_incomplete_date($datum);
if (!$moda) $moda = NodaTimeSplitter::is_valid_date($datum);
if (!$moda) $moda = NodaTimeSplitter::is_valid_date_hungarian($datum);
if (!$moda) $moda = NodaTimeSplitter::is_century($datum);
if (!$moda) $moda = NodaTimeSplitter::is_decade($datum);
if (!$moda) {
$moda = NodaTimeSplitter::is_incomplete_date($datum);
}
if (!$moda) {
$moda = NodaTimeSplitter::is_valid_date($datum);
}
if (!$moda) {
$moda = NodaTimeSplitter::is_valid_date_hungarian($datum);
}
if (!$moda) {
$moda = NodaTimeSplitter::is_century($datum);
}
if (!$moda) {
$moda = NodaTimeSplitter::is_decade($datum);
}
if (!empty($moda)) {
if ((int)$moda[2] > 12 || (int)$moda[3] > 31) {

View File

@ -699,6 +699,8 @@ final class NodaTimeSplitterTest extends TestCase {
$output = NodaTimeSplitter::attempt_splitting("65497028c51eb");
self::assertEquals($output, []);
$output = NodaTimeSplitter::attempt_splitting("6552cf08b0196 test tag");
self::assertEquals($output, []);
# $output = NodaTimeSplitter::attempt_splitting("Nach 1944-1964");
# self::assertEquals($output, []);