[Pkg-owncloud-commits] [php-sabre-vobject] 38/65: add support for milliseconds in DateTimeParser::parseVCardDateTime
David Prévot
taffit at moszumanska.debian.org
Tue Feb 24 23:57:16 UTC 2015
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository php-sabre-vobject.
commit bad08df316d278a3123a8efed3b09e5b632cf8aa
Author: Armin Hackmann <armin at fruux.com>
Date: Thu Feb 5 12:27:20 2015 +0100
add support for milliseconds in DateTimeParser::parseVCardDateTime
---
lib/DateTimeParser.php | 4 ++-
tests/VObject/DateTimeParserTest.php | 48 +++++++++++++++++++++++++++++++++++-
2 files changed, 50 insertions(+), 2 deletions(-)
diff --git a/lib/DateTimeParser.php b/lib/DateTimeParser.php
index c678575..f6e9c20 100644
--- a/lib/DateTimeParser.php
+++ b/lib/DateTimeParser.php
@@ -260,6 +260,7 @@ class DateTimeParser {
(?P<minute> [0-9]{2} | -)?
(?P<second> [0-9]{2})?
+ (?: \.(?P<millisecond> [0-9]{3}))?
(?P<timezone> # timezone offset
Z | (?: \+|-)(?: [0-9]{4})
@@ -269,7 +270,6 @@ class DateTimeParser {
)?
$/x';
-
if (!preg_match($regex, $date, $matches)) {
// Attempting to parse the extended format.
@@ -285,6 +285,7 @@ class DateTimeParser {
(?: (?P<minute> [0-9]{2}) : | -)?
(?P<second> [0-9]{2})?
+ (?: \.(?P<millisecond> [0-9]{3}))?
(?P<timezone> # timezone offset
Z | (?: \+|-)(?: [0-9]{2}:[0-9]{2})
@@ -306,6 +307,7 @@ class DateTimeParser {
'hour',
'minute',
'second',
+ 'millisecond',
'timezone'
);
diff --git a/tests/VObject/DateTimeParserTest.php b/tests/VObject/DateTimeParserTest.php
index f4ae42d..03e9836 100644
--- a/tests/VObject/DateTimeParserTest.php
+++ b/tests/VObject/DateTimeParserTest.php
@@ -196,6 +196,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 14,
"minute" => 00,
"second" => 00,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -208,6 +209,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 14,
"minute" => 00,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -220,6 +222,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 14,
"minute" => null,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -232,6 +235,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => null,
"minute" => null,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -244,6 +248,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => null,
"minute" => null,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -256,6 +261,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => null,
"minute" => null,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -268,6 +274,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => null,
"minute" => null,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -280,6 +287,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => null,
"minute" => null,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -292,6 +300,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 10,
"minute" => 22,
"second" => 0,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -304,6 +313,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 10,
"minute" => 22,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -316,6 +326,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 10,
"minute" => null,
"second" => null,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -328,6 +339,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => null,
"minute" => 22,
"second" => 00,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -340,6 +352,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => null,
"minute" => null,
"second" => 00,
+ "millisecond" => null,
"timezone" => null
),
),
@@ -352,6 +365,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 10,
"minute" => 22,
"second" => 00,
+ "millisecond" => null,
"timezone" => 'Z'
),
),
@@ -364,6 +378,7 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 10,
"minute" => 22,
"second" => 00,
+ "millisecond" => null,
"timezone" => '-0800'
),
),
@@ -378,12 +393,43 @@ class DateTimeParserTest extends \PHPUnit_Framework_TestCase {
"hour" => 15,
"minute" => 10,
"second" => 53,
+ "millisecond" => null,
"timezone" => 'Z'
),
),
+
+ // with milliseconds
+ array(
+ "20121129T151053.123Z",
+ array(
+ "year" => 2012,
+ "month" => 11,
+ "date" => 29,
+ "hour" => 15,
+ "minute" => 10,
+ "second" => 53,
+ "millisecond" => 123,
+ "timezone" => 'Z'
+ ),
+ ),
+
+ // extended format with milliseconds
+ array(
+ "2012-11-29T15:10:53.123Z",
+ array(
+ "year" => 2012,
+ "month" => 11,
+ "date" => 29,
+ "hour" => 15,
+ "minute" => 10,
+ "second" => 53,
+ "millisecond" => 123,
+ "timezone" => 'Z'
+ ),
+ ),
+
);
}
-
}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/php-sabre-vobject.git
More information about the Pkg-owncloud-commits
mailing list