From 2e87df7be87164a4e7534f21c55eb81fc5b69a97 Mon Sep 17 00:00:00 2001 From: Julio Montoya Date: Thu, 15 May 2014 11:05:52 +0200 Subject: [PATCH] Adding sonata-project/exporter --- composer.json | 3 +- vendor/autoload.php | 2 +- vendor/composer/autoload_namespaces.php | 1 + vendor/composer/autoload_real.php | 10 +- vendor/composer/installed.json | 914 ++++++----- vendor/guzzle/guzzle/CHANGELOG.md | 7 + .../guzzle/src/Guzzle/Common/Version.php | 2 +- .../src/Guzzle/Http/ReadLimitEntityBody.php | 3 +- .../guzzle/src/Guzzle/Stream/Stream.php | 4 +- vendor/patchwork/utf8/CHANGELOG.md | 4 + .../utf8/class/Patchwork/Utf8/Bootup.php | 7 - vendor/sabre/vobject/.travis.yml | 5 +- vendor/sabre/vobject/ChangeLog.md | 13 + vendor/sabre/vobject/README.md | 2 +- vendor/sabre/vobject/bin/fetch_tz_data.php | 47 - vendor/sabre/vobject/doc/usage_2.md | 2 +- vendor/sabre/vobject/doc/usage_3.md | 2 +- .../sabre/vobject/lib/Sabre/VObject/Cli.php | 2 +- .../vobject/lib/Sabre/VObject/Component.php | 2 +- .../lib/Sabre/VObject/Component/VAlarm.php | 2 +- .../lib/Sabre/VObject/Component/VCalendar.php | 2 +- .../lib/Sabre/VObject/Component/VCard.php | 2 +- .../lib/Sabre/VObject/Component/VEvent.php | 2 +- .../lib/Sabre/VObject/Component/VFreeBusy.php | 2 +- .../lib/Sabre/VObject/Component/VJournal.php | 2 +- .../lib/Sabre/VObject/Component/VTimeZone.php | 2 +- .../lib/Sabre/VObject/Component/VTodo.php | 2 +- .../lib/Sabre/VObject/DateTimeParser.php | 2 +- .../vobject/lib/Sabre/VObject/Document.php | 2 +- .../vobject/lib/Sabre/VObject/ElementList.php | 2 +- .../lib/Sabre/VObject/EofException.php | 2 +- .../lib/Sabre/VObject/FreeBusyGenerator.php | 2 +- .../sabre/vobject/lib/Sabre/VObject/Node.php | 2 +- .../vobject/lib/Sabre/VObject/Parameter.php | 2 +- .../lib/Sabre/VObject/ParseException.php | 2 +- .../vobject/lib/Sabre/VObject/Parser/Json.php | 2 +- .../lib/Sabre/VObject/Parser/MimeDir.php | 2 +- .../lib/Sabre/VObject/Parser/Parser.php | 2 +- .../vobject/lib/Sabre/VObject/Property.php | 2 +- .../lib/Sabre/VObject/Property/Binary.php | 2 +- .../lib/Sabre/VObject/Property/Boolean.php | 2 +- .../lib/Sabre/VObject/Property/FlatText.php | 2 +- .../lib/Sabre/VObject/Property/Float.php | 2 +- .../VObject/Property/ICalendar/CalAddress.php | 2 +- .../Sabre/VObject/Property/ICalendar/Date.php | 2 +- .../VObject/Property/ICalendar/DateTime.php | 2 +- .../VObject/Property/ICalendar/Duration.php | 2 +- .../VObject/Property/ICalendar/Period.php | 2 +- .../VObject/Property/ICalendar/Recur.php | 2 +- .../lib/Sabre/VObject/Property/Integer.php | 2 +- .../lib/Sabre/VObject/Property/Text.php | 2 +- .../lib/Sabre/VObject/Property/Time.php | 2 +- .../lib/Sabre/VObject/Property/Unknown.php | 2 +- .../lib/Sabre/VObject/Property/Uri.php | 2 +- .../lib/Sabre/VObject/Property/UtcOffset.php | 2 +- .../lib/Sabre/VObject/Property/VCard/Date.php | 2 +- .../VObject/Property/VCard/DateAndOrTime.php | 2 +- .../Sabre/VObject/Property/VCard/DateTime.php | 2 +- .../VObject/Property/VCard/LanguageTag.php | 2 +- .../VObject/Property/VCard/TimeStamp.php | 2 +- .../vobject/lib/Sabre/VObject/Reader.php | 2 +- .../lib/Sabre/VObject/RecurrenceIterator.php | 2 +- .../lib/Sabre/VObject/Splitter/ICalendar.php | 2 +- .../VObject/Splitter/SplitterInterface.php | 2 +- .../lib/Sabre/VObject/Splitter/VCard.php | 2 +- .../vobject/lib/Sabre/VObject/StringUtil.php | 2 +- .../lib/Sabre/VObject/TimeZoneUtil.php | 2 +- .../vobject/lib/Sabre/VObject/UUIDUtil.php | 2 +- .../lib/Sabre/VObject/VCardConverter.php | 2 +- .../vobject/lib/Sabre/VObject/Version.php | 4 +- .../vobject/lib/Sabre/VObject/includes.php | 2 +- .../VObject/timezonedata/exchangezones.php | 2 +- .../Sabre/VObject/timezonedata/lotuszones.php | 2 +- .../Sabre/VObject/timezonedata/php-compat.php | 2 +- .../VObject/timezonedata/windowszones.php | 5 +- .../vobject/tests/Sabre/VObject/CliTest.php | 31 +- .../Property/VCard/DateAndOrTimeTest.php | 2 +- .../RecurrenceIteratorByMonthInDailyTest.php | 58 - ...urrenceIteratorFifthTuesdayProblemTest.php | 51 - .../RecurrenceIteratorIncorrectExpandTest.php | 62 - ...urrenceIteratorInfiniteLoopProblemTest.php | 97 -- .../RecurrenceIteratorMinusOneProblemTest.php | 30 - ...ecurrenceIteratorMissingOverriddenTest.php | 63 - .../Sabre/VObject/RecurrenceIteratorTest.php | 1452 ----------------- ...renceIteratorUntilRespectsTimezoneTest.ics | 39 - ...renceIteratorUntilRespectsTimezoneTest.php | 55 - .../tests/Sabre/VObject/TimeZoneUtilTest.php | 4 +- 87 files changed, 596 insertions(+), 2497 deletions(-) delete mode 100755 vendor/sabre/vobject/bin/fetch_tz_data.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorByMonthInDailyTest.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorFifthTuesdayProblemTest.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorIncorrectExpandTest.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorInfiniteLoopProblemTest.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMinusOneProblemTest.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMissingOverriddenTest.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorTest.php delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.ics delete mode 100644 vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.php diff --git a/composer.json b/composer.json index 618d2dfa01..a99eeddf4f 100755 --- a/composer.json +++ b/composer.json @@ -96,7 +96,8 @@ "zendframework/zend-http": "~2.3", "zendframework/zend-servicemanager": "~2.3", "sabre/vobject" : "~3.1", - "patchwork/utf8": "1.1.*" + "patchwork/utf8": "1.1.*", + "sonata-project/exporter": "1.3.3" }, "require-dev": { "league/flysystem": "0.3.3", diff --git a/vendor/autoload.php b/vendor/autoload.php index ffbb0fbabc..b606a52eb9 100644 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer' . '/autoload_real.php'; -return ComposerAutoloaderInit7d601c150b9796f69feaec06e1a01b36::getLoader(); +return ComposerAutoloaderInit9dadfafaeffed75d64d8b5cefc6da1f0::getLoader(); diff --git a/vendor/composer/autoload_namespaces.php b/vendor/composer/autoload_namespaces.php index 2660313550..d2550556a3 100644 --- a/vendor/composer/autoload_namespaces.php +++ b/vendor/composer/autoload_namespaces.php @@ -87,6 +87,7 @@ return array( 'FranMoreno' => array($vendorDir . '/franmomu/silex-pagerfanta-provider/src'), 'Flint' => array($vendorDir . '/flint/flint/src'), 'FFMpeg' => array($vendorDir . '/php-ffmpeg/php-ffmpeg/src'), + 'Exporter' => array($vendorDir . '/sonata-project/exporter/lib'), 'Evenement' => array($vendorDir . '/evenement/evenement/src'), 'Entity' => array($baseDir . '/main/inc'), 'Doctrine\\ORM\\' => array($vendorDir . '/doctrine/orm/lib'), diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index c97b6ddf3c..eb216148a2 100644 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit7d601c150b9796f69feaec06e1a01b36 +class ComposerAutoloaderInit9dadfafaeffed75d64d8b5cefc6da1f0 { private static $loader; @@ -19,9 +19,9 @@ class ComposerAutoloaderInit7d601c150b9796f69feaec06e1a01b36 return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit7d601c150b9796f69feaec06e1a01b36', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit9dadfafaeffed75d64d8b5cefc6da1f0', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInit7d601c150b9796f69feaec06e1a01b36', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit9dadfafaeffed75d64d8b5cefc6da1f0', 'loadClassLoader')); $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); @@ -45,14 +45,14 @@ class ComposerAutoloaderInit7d601c150b9796f69feaec06e1a01b36 $includeFiles = require __DIR__ . '/autoload_files.php'; foreach ($includeFiles as $file) { - composerRequire7d601c150b9796f69feaec06e1a01b36($file); + composerRequire9dadfafaeffed75d64d8b5cefc6da1f0($file); } return $loader; } } -function composerRequire7d601c150b9796f69feaec06e1a01b36($file) +function composerRequire9dadfafaeffed75d64d8b5cefc6da1f0($file) { require $file; } diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index 64e9bc206c..ec4a9175ff 100644 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -2210,12 +2210,12 @@ "source": { "type": "git", "url": "https://github.com/avalanche123/Imagine.git", - "reference": "2a6c047472c43032b2718d3a31aee6f982f2980c" + "reference": "5b0ab2fd704a031daf0ce4a5487d8c4305fd8317" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/avalanche123/Imagine/zipball/2a6c047472c43032b2718d3a31aee6f982f2980c", - "reference": "2a6c047472c43032b2718d3a31aee6f982f2980c", + "url": "https://api.github.com/repos/avalanche123/Imagine/zipball/5b0ab2fd704a031daf0ce4a5487d8c4305fd8317", + "reference": "5b0ab2fd704a031daf0ce4a5487d8c4305fd8317", "shasum": "" }, "require": { @@ -2229,7 +2229,7 @@ "ext-gmagick": "to use the Gmagick implementation", "ext-imagick": "to use the Imagick implementation" }, - "time": "2014-04-22 05:38:05", + "time": "2014-05-08 12:03:32", "type": "library", "extra": { "branch-alias": { @@ -2262,67 +2262,6 @@ "image processing" ] }, - { - "name": "knplabs/knp-snappy", - "version": "dev-master", - "version_normalized": "9999999-dev", - "source": { - "type": "git", - "url": "https://github.com/KnpLabs/snappy.git", - "reference": "84c9b58713ed7654a51c738c2ba0415d5ef6be72" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/KnpLabs/snappy/zipball/84c9b58713ed7654a51c738c2ba0415d5ef6be72", - "reference": "84c9b58713ed7654a51c738c2ba0415d5ef6be72", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "suggest": { - "google/wkhtmltopdf-amd64": "Provide wkhtmltopdf-amd64 binary, use version `0.11.0-RC1` as dependency", - "google/wkhtmltopdf-i386": "Provide wkhtmltopdf-i386 binary, use version `0.11.0-RC1` as dependency", - "symfony/process": "Process Component of Symfony2." - }, - "time": "2014-03-24 18:43:40", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.1.x-dev" - } - }, - "installation-source": "source", - "autoload": { - "psr-0": { - "Knp\\Snappy": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "KnpLabs Team", - "homepage": "http://knplabs.com" - }, - { - "name": "Symfony Community", - "homepage": "http://github.com/KnpLabs/snappy/contributors" - } - ], - "description": "PHP5 library allowing thumbnail, snapshot or PDF generation from a url or a html page. Wrapper for wkhtmltopdf/wkhtmltoimage.", - "homepage": "http://github.com/KnpLabs/snappy", - "keywords": [ - "knp", - "knplabs", - "pdf", - "snapshot", - "thumbnail", - "wkhtmltopdf" - ] - }, { "name": "grom/silex-service-provider", "version": "dev-master", @@ -2716,100 +2655,6 @@ "description": "Symfony Process Component", "homepage": "http://symfony.com" }, - { - "name": "guzzle/guzzle", - "version": "v3.9.0", - "version_normalized": "3.9.0.0", - "source": { - "type": "git", - "url": "https://github.com/guzzle/guzzle3.git", - "reference": "e4d12d7d6acccf75a5e504114e2df9195e494108" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle3/zipball/e4d12d7d6acccf75a5e504114e2df9195e494108", - "reference": "e4d12d7d6acccf75a5e504114e2df9195e494108", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "php": ">=5.3.3", - "symfony/event-dispatcher": "~2.1" - }, - "replace": { - "guzzle/batch": "self.version", - "guzzle/cache": "self.version", - "guzzle/common": "self.version", - "guzzle/http": "self.version", - "guzzle/inflection": "self.version", - "guzzle/iterator": "self.version", - "guzzle/log": "self.version", - "guzzle/parser": "self.version", - "guzzle/plugin": "self.version", - "guzzle/plugin-async": "self.version", - "guzzle/plugin-backoff": "self.version", - "guzzle/plugin-cache": "self.version", - "guzzle/plugin-cookie": "self.version", - "guzzle/plugin-curlauth": "self.version", - "guzzle/plugin-error-response": "self.version", - "guzzle/plugin-history": "self.version", - "guzzle/plugin-log": "self.version", - "guzzle/plugin-md5": "self.version", - "guzzle/plugin-mock": "self.version", - "guzzle/plugin-oauth": "self.version", - "guzzle/service": "self.version", - "guzzle/stream": "self.version" - }, - "require-dev": { - "doctrine/cache": "~1.3", - "monolog/monolog": "~1.0", - "phpunit/phpunit": "3.7.*", - "psr/log": "~1.0", - "symfony/class-loader": "~2.1", - "zendframework/zend-cache": "2.*,<2.3", - "zendframework/zend-log": "2.*,<2.3" - }, - "time": "2014-04-23 21:43:40", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.8-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Guzzle": "src/", - "Guzzle\\Tests": "tests/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Guzzle Community", - "homepage": "https://github.com/guzzle/guzzle/contributors" - } - ], - "description": "Guzzle is a PHP HTTP client library and framework for building RESTful web service clients", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "client", - "curl", - "framework", - "http", - "http client", - "rest", - "web service" - ] - }, { "name": "alchemy/zippy", "version": "0.2.0", @@ -4590,66 +4435,6 @@ "description": "lessphp is a compiler for LESS written in PHP.", "homepage": "http://leafo.net/lessphp/" }, - { - "name": "filp/whoops", - "version": "dev-master", - "version_normalized": "9999999-dev", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "614f0de7c888c8c81f74cd28ac6fd0268c4633e6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/614f0de7c888c8c81f74cd28ac6fd0268c4633e6", - "reference": "614f0de7c888c8c81f74cd28ac6fd0268c4633e6", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "require-dev": { - "mockery/mockery": "0.9.*" - }, - "time": "2014-04-20 02:14:11", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1-dev" - } - }, - "installation-source": "source", - "autoload": { - "psr-0": { - "Whoops": "src/" - }, - "classmap": [ - "src/deprecated" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" - } - ], - "description": "php error handling for cool kids", - "homepage": "https://github.com/filp/whoops", - "keywords": [ - "error", - "exception", - "handling", - "library", - "silex-provider", - "whoops", - "zf2" - ] - }, { "name": "symfony/web-profiler-bundle", "version": "v2.4.4", @@ -5564,42 +5349,26 @@ ] }, { - "name": "pagerfanta/pagerfanta", + "name": "franmomu/silex-pagerfanta-provider", "version": "dev-master", "version_normalized": "9999999-dev", "source": { "type": "git", - "url": "https://github.com/whiteoctober/Pagerfanta.git", - "reference": "c41473a84768ac18ec107033dbfa87229cdefafa" + "url": "https://github.com/jmontoyaa/silex-pagerfanta-provider.git", + "reference": "d957fb8fbfb27c65495df1be7023cb074e6b4d25" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/whiteoctober/Pagerfanta/zipball/c41473a84768ac18ec107033dbfa87229cdefafa", - "reference": "c41473a84768ac18ec107033dbfa87229cdefafa", + "url": "https://api.github.com/repos/jmontoyaa/silex-pagerfanta-provider/zipball/d957fb8fbfb27c65495df1be7023cb074e6b4d25", + "reference": "d957fb8fbfb27c65495df1be7023cb074e6b4d25", "shasum": "" }, "require": { - "php": ">=5.3.0" - }, - "require-dev": { - "doctrine/mongodb-odm": "1.0.*@dev", - "doctrine/orm": "2.3.*", - "doctrine/phpcr-odm": "1.0.*", - "jmikola/geojson": "1.0.*", - "mandango/mandango": "1.0.*@dev", - "phpunit/phpunit": "3.7.*", - "propel/propel1": "~1.6", - "solarium/solarium": "3.1.*" - }, - "suggest": { - "doctrine/mongodb-odm": "To use the DoctrineODMMongoDBAdapter.", - "doctrine/orm": "To use the DoctrineORMAdapter.", - "doctrine/phpcr-odm": "To use the DoctrineODMPhpcrAdapter. >= 1.1.0", - "mandango/mandango": "To use the MandangoAdapter.", - "propel/propel1": "To use the PropelAdapter", - "solarium/solarium": "To use the SolariumAdapter." + "pagerfanta/pagerfanta": "dev-master", + "silex/silex": "1.*", + "symfony/property-access": "~2.3" }, - "time": "2014-03-14 07:32:00", + "time": "2013-08-15 16:35:05", "type": "library", "extra": { "branch-alias": { @@ -5609,84 +5378,32 @@ "installation-source": "source", "autoload": { "psr-0": { - "Pagerfanta\\": "src/" + "FranMoreno": "src/" } }, - "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { - "name": "Pablo Díez", - "email": "pablodip@gmail.com", - "homepage": "http://github.com/pablodip" + "name": "Fran Moreno", + "email": "franmomu@gmail.com", + "homepage": "http://showmethecode.es" } ], - "description": "Pagination for PHP 5.3", + "description": "Silex ServiceProvider for Pagerfanta Library", + "homepage": "https://github.com/franmomu/silex-pagerfanta-provider", "keywords": [ - "page", - "pagination", - "paginator", - "paging" - ] + "pagerfanta", + "service provider", + "silex" + ], + "support": { + "source": "https://github.com/jmontoyaa/silex-pagerfanta-provider/tree/master" + } }, { - "name": "franmomu/silex-pagerfanta-provider", - "version": "dev-master", - "version_normalized": "9999999-dev", - "source": { - "type": "git", - "url": "https://github.com/jmontoyaa/silex-pagerfanta-provider.git", - "reference": "d957fb8fbfb27c65495df1be7023cb074e6b4d25" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/jmontoyaa/silex-pagerfanta-provider/zipball/d957fb8fbfb27c65495df1be7023cb074e6b4d25", - "reference": "d957fb8fbfb27c65495df1be7023cb074e6b4d25", - "shasum": "" - }, - "require": { - "pagerfanta/pagerfanta": "dev-master", - "silex/silex": "1.*", - "symfony/property-access": "~2.3" - }, - "time": "2013-08-15 16:35:05", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "installation-source": "source", - "autoload": { - "psr-0": { - "FranMoreno": "src/" - } - }, - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fran Moreno", - "email": "franmomu@gmail.com", - "homepage": "http://showmethecode.es" - } - ], - "description": "Silex ServiceProvider for Pagerfanta Library", - "homepage": "https://github.com/franmomu/silex-pagerfanta-provider", - "keywords": [ - "pagerfanta", - "service provider", - "silex" - ], - "support": { - "source": "https://github.com/jmontoyaa/silex-pagerfanta-provider/tree/master" - } - }, - { - "name": "igorw/config-service-provider", + "name": "igorw/config-service-provider", "version": "dev-master", "version_normalized": "9999999-dev", "source": { @@ -5909,120 +5626,6 @@ "zf2" ] }, - { - "name": "sabre/vobject", - "version": "3.2.0", - "version_normalized": "3.2.0.0", - "source": { - "type": "git", - "url": "https://github.com/fruux/sabre-vobject.git", - "reference": "dd1dd19b6601cdc99408b70ec260052825f70b8f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fruux/sabre-vobject/zipball/dd1dd19b6601cdc99408b70ec260052825f70b8f", - "reference": "dd1dd19b6601cdc99408b70ec260052825f70b8f", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "php": ">=5.3.1" - }, - "require-dev": { - "phpunit/phpunit": "*" - }, - "time": "2014-04-02 23:53:27", - "bin": [ - "bin/vobject", - "bin/generate_vcards" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.2.x-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Sabre\\VObject": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Evert Pot", - "email": "evert@rooftopsolutions.nl", - "homepage": "http://evertpot.com/", - "role": "Developer" - } - ], - "description": "The VObject library for PHP allows you to easily parse and manipulate iCalendar and vCard objects", - "homepage": "https://github.com/fruux/sabre-vobject", - "keywords": [ - "VObject", - "iCalendar", - "jCal", - "jCard", - "vCard" - ] - }, - { - "name": "patchwork/utf8", - "version": "v1.1.21", - "version_normalized": "1.1.21.0", - "source": { - "type": "git", - "url": "https://github.com/nicolas-grekas/Patchwork-UTF8.git", - "reference": "f45ba8bc7962b7356847724989a6949b68d975a2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nicolas-grekas/Patchwork-UTF8/zipball/f45ba8bc7962b7356847724989a6949b68d975a2", - "reference": "f45ba8bc7962b7356847724989a6949b68d975a2", - "shasum": "" - }, - "require": { - "lib-pcre": ">=7.3", - "php": ">=5.3.0" - }, - "suggest": { - "ext-iconv": "Use iconv for best performance", - "ext-intl": "Use Intl for best performance", - "ext-mbstring": "Use Mbstring for best performance" - }, - "time": "2014-03-26 10:52:02", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-0": { - "Patchwork": "class/", - "Normalizer": "class/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "(Apache-2.0 or GPL-2.0)" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com", - "role": "Developer" - } - ], - "description": "Extensive, portable and performant handling of UTF-8 and grapheme clusters for PHP", - "homepage": "https://github.com/nicolas-grekas/Patchwork-UTF8", - "keywords": [ - "i18n", - "unicode", - "utf-8", - "utf8" - ] - }, { "name": "symfony/dom-crawler", "version": "v2.4.4", @@ -6271,6 +5874,461 @@ "silex" ] }, + { + "name": "sonata-project/exporter", + "version": "1.3.3", + "version_normalized": "1.3.3.0", + "source": { + "type": "git", + "url": "https://github.com/sonata-project/exporter.git", + "reference": "dad681274e09854a972a0c882ebddd095b7837be" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sonata-project/exporter/zipball/dad681274e09854a972a0c882ebddd095b7837be", + "reference": "dad681274e09854a972a0c882ebddd095b7837be", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "propel/propel1": "~1.6", + "symfony/property-access": "~2.2", + "symfony/routing": "*" + }, + "suggest": { + "ext-curl": "*", + "propel/propel1": "~1.6", + "symfony/property-access": "~2.2", + "symfony/routing": "*" + }, + "time": "2013-10-24 13:43:33", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-0": { + "Exporter": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Thomas Rabaix", + "email": "thomas.rabaix@gmail.com", + "homepage": "http://sonata-project.org/" + } + ], + "description": "Lightweight Exporter library", + "homepage": "https://github.com/sonata-project/Exporter", + "keywords": [ + "client", + "csv", + "data", + "export", + "xls" + ] + }, + { + "name": "sabre/vobject", + "version": "3.2.2", + "version_normalized": "3.2.2.0", + "source": { + "type": "git", + "url": "https://github.com/fruux/sabre-vobject.git", + "reference": "a829266cebcaccf602bde3af2c7e85a952034a16" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fruux/sabre-vobject/zipball/a829266cebcaccf602bde3af2c7e85a952034a16", + "reference": "a829266cebcaccf602bde3af2c7e85a952034a16", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": ">=5.3.1" + }, + "require-dev": { + "phpunit/phpunit": "*" + }, + "time": "2014-05-07 20:02:21", + "bin": [ + "bin/vobject", + "bin/generate_vcards" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Sabre\\VObject": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Evert Pot", + "email": "evert@rooftopsolutions.nl", + "homepage": "http://evertpot.com/", + "role": "Developer" + } + ], + "description": "The VObject library for PHP allows you to easily parse and manipulate iCalendar and vCard objects", + "homepage": "https://github.com/fruux/sabre-vobject", + "keywords": [ + "VObject", + "iCalendar", + "jCal", + "jCard", + "vCard" + ] + }, + { + "name": "patchwork/utf8", + "version": "v1.1.22", + "version_normalized": "1.1.22.0", + "source": { + "type": "git", + "url": "https://github.com/nicolas-grekas/Patchwork-UTF8.git", + "reference": "156e66249f48e439a31df2347290bb9ab1d3d242" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nicolas-grekas/Patchwork-UTF8/zipball/156e66249f48e439a31df2347290bb9ab1d3d242", + "reference": "156e66249f48e439a31df2347290bb9ab1d3d242", + "shasum": "" + }, + "require": { + "lib-pcre": ">=7.3", + "php": ">=5.3.0" + }, + "suggest": { + "ext-iconv": "Use iconv for best performance", + "ext-intl": "Use Intl for best performance", + "ext-mbstring": "Use Mbstring for best performance" + }, + "time": "2014-05-06 15:47:10", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-0": { + "Patchwork": "class/", + "Normalizer": "class/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "(Apache-2.0 or GPL-2.0)" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com", + "role": "Developer" + } + ], + "description": "Extensive, portable and performant handling of UTF-8 and grapheme clusters for PHP", + "homepage": "https://github.com/nicolas-grekas/Patchwork-UTF8", + "keywords": [ + "i18n", + "unicode", + "utf-8", + "utf8" + ] + }, + { + "name": "guzzle/guzzle", + "version": "v3.9.1", + "version_normalized": "3.9.1.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle3.git", + "reference": "92d9934f2fca1da15178c91239576ae26e505e60" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle3/zipball/92d9934f2fca1da15178c91239576ae26e505e60", + "reference": "92d9934f2fca1da15178c91239576ae26e505e60", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "php": ">=5.3.3", + "symfony/event-dispatcher": "~2.1" + }, + "replace": { + "guzzle/batch": "self.version", + "guzzle/cache": "self.version", + "guzzle/common": "self.version", + "guzzle/http": "self.version", + "guzzle/inflection": "self.version", + "guzzle/iterator": "self.version", + "guzzle/log": "self.version", + "guzzle/parser": "self.version", + "guzzle/plugin": "self.version", + "guzzle/plugin-async": "self.version", + "guzzle/plugin-backoff": "self.version", + "guzzle/plugin-cache": "self.version", + "guzzle/plugin-cookie": "self.version", + "guzzle/plugin-curlauth": "self.version", + "guzzle/plugin-error-response": "self.version", + "guzzle/plugin-history": "self.version", + "guzzle/plugin-log": "self.version", + "guzzle/plugin-md5": "self.version", + "guzzle/plugin-mock": "self.version", + "guzzle/plugin-oauth": "self.version", + "guzzle/service": "self.version", + "guzzle/stream": "self.version" + }, + "require-dev": { + "doctrine/cache": "~1.3", + "monolog/monolog": "~1.0", + "phpunit/phpunit": "3.7.*", + "psr/log": "~1.0", + "symfony/class-loader": "~2.1", + "zendframework/zend-cache": "2.*,<2.3", + "zendframework/zend-log": "2.*,<2.3" + }, + "time": "2014-05-07 17:04:22", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.8-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Guzzle": "src/", + "Guzzle\\Tests": "tests/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Guzzle Community", + "homepage": "https://github.com/guzzle/guzzle/contributors" + } + ], + "description": "Guzzle is a PHP HTTP client library and framework for building RESTful web service clients", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "rest", + "web service" + ] + }, + { + "name": "knplabs/knp-snappy", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "https://github.com/KnpLabs/snappy.git", + "reference": "462344d2216bf9c9730027a3ee9286eb28967d57" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/KnpLabs/snappy/zipball/462344d2216bf9c9730027a3ee9286eb28967d57", + "reference": "462344d2216bf9c9730027a3ee9286eb28967d57", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "suggest": { + "h4cc/wkhtmltopdf-amd64": "Provide wkhtmltopdf-amd64 binary, use version `0.12.0` as dependency", + "h4cc/wkhtmltopdf-i386": "Provide wkhtmltopdf-i386 binary, use version `0.12.0` as dependency", + "symfony/process": "Process Component of Symfony2." + }, + "time": "2014-05-07 09:03:08", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.1.x-dev" + } + }, + "installation-source": "source", + "autoload": { + "psr-0": { + "Knp\\Snappy": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "KnpLabs Team", + "homepage": "http://knplabs.com" + }, + { + "name": "Symfony Community", + "homepage": "http://github.com/KnpLabs/snappy/contributors" + } + ], + "description": "PHP5 library allowing thumbnail, snapshot or PDF generation from a url or a html page. Wrapper for wkhtmltopdf/wkhtmltoimage.", + "homepage": "http://github.com/KnpLabs/snappy", + "keywords": [ + "knp", + "knplabs", + "pdf", + "snapshot", + "thumbnail", + "wkhtmltopdf" + ] + }, + { + "name": "filp/whoops", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "https://github.com/filp/whoops.git", + "reference": "ae05259236204ccf904a94e5b0d96df8d4351da5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/filp/whoops/zipball/ae05259236204ccf904a94e5b0d96df8d4351da5", + "reference": "ae05259236204ccf904a94e5b0d96df8d4351da5", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "mockery/mockery": "0.9.*" + }, + "time": "2014-05-13 05:05:11", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "installation-source": "source", + "autoload": { + "psr-0": { + "Whoops": "src/" + }, + "classmap": [ + "src/deprecated" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Filipe Dobreira", + "homepage": "https://github.com/filp", + "role": "Developer" + } + ], + "description": "php error handling for cool kids", + "homepage": "https://github.com/filp/whoops", + "keywords": [ + "error", + "exception", + "handling", + "library", + "silex-provider", + "whoops", + "zf2" + ] + }, + { + "name": "pagerfanta/pagerfanta", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "https://github.com/whiteoctober/Pagerfanta.git", + "reference": "182db172bde6b1db453dc7fd38d3b7a401ba1f37" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/whiteoctober/Pagerfanta/zipball/182db172bde6b1db453dc7fd38d3b7a401ba1f37", + "reference": "182db172bde6b1db453dc7fd38d3b7a401ba1f37", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "doctrine/mongodb-odm": "1.0.*@dev", + "doctrine/orm": "2.3.*", + "doctrine/phpcr-odm": "1.0.*", + "jmikola/geojson": "1.0.*", + "mandango/mandango": "1.0.*@dev", + "phpunit/phpunit": "3.7.*", + "propel/propel1": "~1.6", + "solarium/solarium": "3.1.*" + }, + "suggest": { + "doctrine/mongodb-odm": "To use the DoctrineODMMongoDBAdapter.", + "doctrine/orm": "To use the DoctrineORMAdapter.", + "doctrine/phpcr-odm": "To use the DoctrineODMPhpcrAdapter. >= 1.1.0", + "mandango/mandango": "To use the MandangoAdapter.", + "propel/propel1": "To use the PropelAdapter", + "solarium/solarium": "To use the SolariumAdapter." + }, + "time": "2014-05-12 09:06:10", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "installation-source": "source", + "autoload": { + "psr-0": { + "Pagerfanta\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Pablo Díez", + "email": "pablodip@gmail.com", + "homepage": "http://github.com/pablodip" + } + ], + "description": "Pagination for PHP 5.3", + "keywords": [ + "page", + "pagination", + "paginator", + "paging" + ] + }, { "name": "chamilo/chash", "version": "dev-master", @@ -6278,12 +6336,12 @@ "source": { "type": "git", "url": "https://github.com/chamilo/chash.git", - "reference": "9ad5b2e1679d490c46bd3b49d1fe610811678f0c" + "reference": "2d5a2d3e2d8efd8edef25ba26bd0463160d21c9b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/chamilo/chash/zipball/9ad5b2e1679d490c46bd3b49d1fe610811678f0c", - "reference": "9ad5b2e1679d490c46bd3b49d1fe610811678f0c", + "url": "https://api.github.com/repos/chamilo/chash/zipball/2d5a2d3e2d8efd8edef25ba26bd0463160d21c9b", + "reference": "2d5a2d3e2d8efd8edef25ba26bd0463160d21c9b", "shasum": "" }, "require": { @@ -6304,7 +6362,7 @@ "mikey179/vfsstream": ">=1.2", "phpunit/phpunit": "3.7.*" }, - "time": "2014-05-03 12:04:27", + "time": "2014-05-04 16:39:05", "type": "library", "installation-source": "source", "autoload": { diff --git a/vendor/guzzle/guzzle/CHANGELOG.md b/vendor/guzzle/guzzle/CHANGELOG.md index 1914d9ab50..a1ba31fd3f 100644 --- a/vendor/guzzle/guzzle/CHANGELOG.md +++ b/vendor/guzzle/guzzle/CHANGELOG.md @@ -1,6 +1,13 @@ CHANGELOG ========= +3.9.1 (2014-05-07) +------------------ + +* Added a fix to ReadLimitEntityBody to ensure it doesn't infinitely loop. +* Added a fix to the stream checksum function so that when the first read + returns a falsey value, it still continues to consume the stream until EOF. + 3.9.0 (2014-04-23) ------------------ diff --git a/vendor/guzzle/guzzle/src/Guzzle/Common/Version.php b/vendor/guzzle/guzzle/src/Guzzle/Common/Version.php index 0de1414fe2..85f9dc5172 100644 --- a/vendor/guzzle/guzzle/src/Guzzle/Common/Version.php +++ b/vendor/guzzle/guzzle/src/Guzzle/Common/Version.php @@ -7,7 +7,7 @@ namespace Guzzle\Common; */ class Version { - const VERSION = '3.9.0'; + const VERSION = '3.9.1'; /** * @var bool Set this value to true to enable warnings for deprecated functionality use. This should be on in your diff --git a/vendor/guzzle/guzzle/src/Guzzle/Http/ReadLimitEntityBody.php b/vendor/guzzle/guzzle/src/Guzzle/Http/ReadLimitEntityBody.php index 1173908c56..a34893a661 100644 --- a/vendor/guzzle/guzzle/src/Guzzle/Http/ReadLimitEntityBody.php +++ b/vendor/guzzle/guzzle/src/Guzzle/Http/ReadLimitEntityBody.php @@ -35,7 +35,8 @@ class ReadLimitEntityBody extends AbstractEntityBodyDecorator public function isConsumed() { - return (($this->offset + $this->limit) - $this->body->ftell()) <= 0; + return $this->body->isConsumed() || + ($this->body->ftell() >= $this->offset + $this->limit); } /** diff --git a/vendor/guzzle/guzzle/src/Guzzle/Stream/Stream.php b/vendor/guzzle/guzzle/src/Guzzle/Stream/Stream.php index de7e9528a0..12bed268d9 100644 --- a/vendor/guzzle/guzzle/src/Guzzle/Stream/Stream.php +++ b/vendor/guzzle/guzzle/src/Guzzle/Stream/Stream.php @@ -100,8 +100,8 @@ class Stream implements StreamInterface } $ctx = hash_init($algo); - while ($data = $stream->read(8192)) { - hash_update($ctx, $data); + while (!$stream->feof()) { + hash_update($ctx, $stream->read(8192)); } $out = hash_final($ctx, (bool) $rawOutput); diff --git a/vendor/patchwork/utf8/CHANGELOG.md b/vendor/patchwork/utf8/CHANGELOG.md index 3289f8db57..75bb03e030 100644 --- a/vendor/patchwork/utf8/CHANGELOG.md +++ b/vendor/patchwork/utf8/CHANGELOG.md @@ -1,3 +1,7 @@ +## v1.1.22 (2014-04-06) + +- fix #19: don't call ini_set() when not required and gain compat with PHP5.6 + ## v1.1.21 (2014-03-26) - fix #18 u::wordwrap() now relies on native behavior diff --git a/vendor/patchwork/utf8/class/Patchwork/Utf8/Bootup.php b/vendor/patchwork/utf8/class/Patchwork/Utf8/Bootup.php index fc75d67550..4716ff5c32 100644 --- a/vendor/patchwork/utf8/class/Patchwork/Utf8/Bootup.php +++ b/vendor/patchwork/utf8/class/Patchwork/Utf8/Bootup.php @@ -54,25 +54,21 @@ class Bootup if ('utf-8' !== strtolower(mb_internal_encoding())) { mb_internal_encoding('UTF-8'); - ini_set('mbstring.internal_encoding', 'UTF-8'); } if ('none' !== strtolower(mb_substitute_character())) { mb_substitute_character('none'); - ini_set('mbstring.substitute_character', 'none'); } if (!in_array(strtolower(mb_http_output()), array('pass', '8bit'))) { mb_http_output('pass'); - ini_set('mbstring.http_output', 'pass'); } if (!in_array(strtolower(mb_language()), array('uni', 'neutral'))) { mb_language('uni'); - ini_set('mbstring.language', 'uni'); } } else if (!defined('MB_OVERLOAD_MAIL')) @@ -90,19 +86,16 @@ class Bootup if ('UTF-8' !== iconv_get_encoding('input_encoding')) { iconv_set_encoding('input_encoding', 'UTF-8'); - ini_set('iconv.input_encoding', 'UTF-8'); } if ('UTF-8' !== iconv_get_encoding('internal_encoding')) { iconv_set_encoding('internal_encoding', 'UTF-8'); - ini_set('iconv.internal_encoding', 'UTF-8'); } if ('UTF-8' !== iconv_get_encoding('output_encoding')) { iconv_set_encoding('output_encoding' , 'UTF-8'); - ini_set('iconv.output_encoding', 'UTF-8'); } } else if (!defined('ICONV_IMPL')) diff --git a/vendor/sabre/vobject/.travis.yml b/vendor/sabre/vobject/.travis.yml index adc3da3091..d129e922f0 100644 --- a/vendor/sabre/vobject/.travis.yml +++ b/vendor/sabre/vobject/.travis.yml @@ -3,16 +3,13 @@ php: - 5.3 - 5.4 - 5.5 - - 5.5.9 - - 5.5.10 + - 5.5.11 - 5.6 - hhvm - hhvm-nightly matrix: allow_failures: - - php: 5.5.10 - - php: 5.6 - php: hhvm-nightly script: diff --git a/vendor/sabre/vobject/ChangeLog.md b/vendor/sabre/vobject/ChangeLog.md index 7c06ab45b7..d671fc029c 100644 --- a/vendor/sabre/vobject/ChangeLog.md +++ b/vendor/sabre/vobject/ChangeLog.md @@ -1,6 +1,19 @@ ChangeLog ========= +3.2.2 (2014-05-07) +------------------ +* Minor tweak in unittests to make it run on PHP 5.5.12. Json-prettifying + slightly changed which caused the test to fail. + + +3.2.1 (2014-05-03) +------------------ +* Minor tweak to make the unittests run with the latest hhvm on travis. +* Updated timezone definitions. +* Updated copyright links to point to http://sabre.io/ + + 3.2.0 (2014-04-02) ------------------ diff --git a/vendor/sabre/vobject/README.md b/vendor/sabre/vobject/README.md index 009b7e4006..76e3fae394 100644 --- a/vendor/sabre/vobject/README.md +++ b/vendor/sabre/vobject/README.md @@ -5,7 +5,7 @@ The VObject library allows you to easily parse and manipulate [iCalendar](https: and [vCard](https://tools.ietf.org/html/rfc6350) objects using PHP. The goal of the VObject library is to create a very complete library, with an easy to use API. -This project is a spin-off from [SabreDAV](http://code.google.com/p/sabredav/), where it has +This project is a spin-off from [SabreDAV](http://sabre.io/), where it has been used for several years. The VObject library has 100% unittest coverage. Build status diff --git a/vendor/sabre/vobject/bin/fetch_tz_data.php b/vendor/sabre/vobject/bin/fetch_tz_data.php deleted file mode 100755 index 339b7b2c61..0000000000 --- a/vendor/sabre/vobject/bin/fetch_tz_data.php +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/env php -xpath('//mapZone') as $mapZone) { - - $from = (string)$mapZone['other']; - $to = (string)$mapZone['type']; - - list($to) = explode(' ', $to, 2); - - if (!isset($map[$from])) { - $map[$from] = $to; - } - -} - -ksort($map); -echo "Writing to: $outputFile\n"; - -$f = fopen($outputFile,'w'); -fwrite($f, " 'UTC', diff --git a/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/lotuszones.php b/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/lotuszones.php index 63a2cc82cb..15147f5412 100644 --- a/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/lotuszones.php +++ b/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/lotuszones.php @@ -5,7 +5,7 @@ * Lotus / Domino * * @copyright Copyright (C) 2007-2014 fruux GmbH (https://fruux.com/). - * @license http://code.google.com/p/sabredav/wiki/License Modified BSD License + * @license http://sabre.io/license/ Modified BSD License */ return array( 'Dateline' => 'Etc/GMT-12', diff --git a/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/php-compat.php b/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/php-compat.php index c1c5ee5181..29fae3da91 100644 --- a/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/php-compat.php +++ b/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/php-compat.php @@ -7,7 +7,7 @@ * http://evertpot.com/php-5-5-10-timezone-changes/ * * @copyright Copyright (C) 2007-2014 fruux GmbH (https://fruux.com/). - * @license http://code.google.com/p/sabredav/wiki/License Modified BSD License + * @license http://sabre.io/license/ Modified BSD License */ return array( 'CST6CDT' => 'America/Chicago', diff --git a/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/windowszones.php b/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/windowszones.php index e6b72b164f..62017b519a 100644 --- a/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/windowszones.php +++ b/vendor/sabre/vobject/lib/Sabre/VObject/timezonedata/windowszones.php @@ -3,11 +3,11 @@ /** * Automatically generated timezone file * - * Last update: 2013-10-15T12:50:14+02:00 + * Last update: 2014-04-30T14:05:46-04:00 * Source: http://unicode.org/repos/cldr/trunk/common/supplemental/windowsZones.xml * * @copyright Copyright (C) 2007-2014 fruux GmbH (https://fruux.com/). - * @license http://code.google.com/p/sabredav/wiki/License Modified BSD License + * @license http://sabre.io/license/ Modified BSD License */ return array ( @@ -40,7 +40,6 @@ return array ( 'Dateline Standard Time' => 'Etc/GMT+12', 'E. Africa Standard Time' => 'Africa/Nairobi', 'E. Australia Standard Time' => 'Australia/Brisbane', - 'E. Europe Standard Time' => 'Asia/Nicosia', 'E. South America Standard Time' => 'America/Sao_Paulo', 'Eastern Standard Time' => 'America/New_York', 'Egypt Standard Time' => 'Africa/Cairo', diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/CliTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/CliTest.php index e2be4696e7..9d4b19cbdb 100644 --- a/vendor/sabre/vobject/tests/Sabre/VObject/CliTest.php +++ b/vendor/sabre/vobject/tests/Sabre/VObject/CliTest.php @@ -178,39 +178,18 @@ ICS rewind($this->cli->stdout); $version = Version::VERSION; + + // PHP 5.5.12 changed the output + $expected = <<assertEquals( + $this->assertStringStartsWith( $expected, stream_get_contents($this->cli->stdout) ); diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/Property/VCard/DateAndOrTimeTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/Property/VCard/DateAndOrTimeTest.php index 6a901740dc..e27d8c1d42 100644 --- a/vendor/sabre/vobject/tests/Sabre/VObject/Property/VCard/DateAndOrTimeTest.php +++ b/vendor/sabre/vobject/tests/Sabre/VObject/Property/VCard/DateAndOrTimeTest.php @@ -158,7 +158,7 @@ class DateAndOrTimeTest extends \PHPUnit_Framework_TestCase { $prop = $vcard->createProperty('BDAY', $datetime); $dt = $prop->getDateTime(); - $this->assertEquals($datetime, $dt); + $this->assertEquals('2014-04-02T18:37:00-04:00', $dt->format('c'), "For some reason this one failed. Current default timezone is: " . date_default_timezone_get()); } diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorByMonthInDailyTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorByMonthInDailyTest.php deleted file mode 100644 index 9c7d9b03f3..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorByMonthInDailyTest.php +++ /dev/null @@ -1,58 +0,0 @@ -assertInstanceOf('Sabre\\VObject\\Component\\VCalendar', $vcal); - - $vcal->expand(new DateTime('2013-09-28'), new DateTime('2014-09-11')); - - foreach ($vcal->VEVENT as $event) { - $dates[] = $event->DTSTART->getValue(); - } - - $expectedDates = array( - "20130929T160000Z", - "20131006T160000Z", - "20131013T160000Z", - "20131020T160000Z", - "20131027T160000Z", - "20140907T160000Z" - ); - - $this->assertEquals($expectedDates, $dates, 'Recursed dates are restricted by month'); - } - -} diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorFifthTuesdayProblemTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorFifthTuesdayProblemTest.php deleted file mode 100644 index f55814e351..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorFifthTuesdayProblemTest.php +++ /dev/null @@ -1,51 +0,0 @@ -VEVENT->UID); - - while($it->valid()) { - $it->next(); - } - - // If we got here, it means we were successful. The bug that was in the - // system before would fail on the 5th tuesday of the month, if the 5th - // tuesday did not exist. - $this->assertTrue(true); - - } - -} diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorIncorrectExpandTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorIncorrectExpandTest.php deleted file mode 100644 index d6c93d0479..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorIncorrectExpandTest.php +++ /dev/null @@ -1,62 +0,0 @@ -assertInstanceOf('Sabre\\VObject\\Component\\VCalendar', $vcal); - - $vcal->expand(new DateTime('2011-01-01'), new DateTime('2014-01-01')); - - $result = $vcal->serialize(); - - $output = <<assertEquals($output, str_replace("\r", "", $result)); - - } - -} diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorInfiniteLoopProblemTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorInfiniteLoopProblemTest.php deleted file mode 100644 index 46b3c1569f..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorInfiniteLoopProblemTest.php +++ /dev/null @@ -1,97 +0,0 @@ -vcal = new VCalendar(); - - } - - /** - * This bug came from a Fruux customer. This would result in a never-ending - * request. - */ - function testFastForwardTooFar() { - - $ev = $this->vcal->createComponent('VEVENT'); - $ev->DTSTART = '20090420T180000Z'; - $ev->RRULE = 'FREQ=WEEKLY;BYDAY=MO;UNTIL=20090704T205959Z;INTERVAL=1'; - - $this->assertFalse($ev->isInTimeRange(new DateTime('2012-01-01 12:00:00'),new DateTime('3000-01-01 00:00:00'))); - - } - - /** - * Different bug, also likely an infinite loop. - */ - function testYearlyByMonthLoop() { - - $ev = $this->vcal->createComponent('VEVENT'); - $ev->UID = 'uuid'; - $ev->DTSTART = '20120101T154500'; - $ev->DTSTART['TZID'] = 'Europe/Berlin'; - $ev->RRULE = 'FREQ=YEARLY;INTERVAL=1;UNTIL=20120203T225959Z;BYMONTH=2;BYSETPOS=1;BYDAY=SU,MO,TU,WE,TH,FR,SA'; - $ev->DTEND = '20120101T164500'; - $ev->DTEND['TZID'] = 'Europe/Berlin'; - - // This recurrence rule by itself is a yearly rule that should happen - // every february. - // - // The BYDAY part expands this to every day of the month, but the - // BYSETPOS limits this to only the 1st day of the month. Very crazy - // way to specify this, and could have certainly been a lot easier. - $this->vcal->add($ev); - - $it = new RecurrenceIterator($this->vcal,'uuid'); - $it->fastForward(new DateTime('2012-01-29 23:00:00', new DateTimeZone('UTC'))); - - $collect = array(); - - while($it->valid()) { - $collect[] = $it->getDTSTART(); - if ($it->getDTSTART() > new DateTime('2013-02-05 22:59:59', new DateTimeZone('UTC'))) { - break; - } - $it->next(); - - } - - $this->assertEquals( - array(new DateTime('2012-02-01 15:45:00', new DateTimeZone('Europe/Berlin'))), - $collect - ); - - } - - /** - * Something, somewhere produced an ics with an interval set to 0. Because - * this means we increase the current day (or week, month) by 0, this also - * results in an infinite loop. - * - * @expectedException InvalidArgumentException - * @return void - */ - function testZeroInterval() { - - $ev = $this->vcal->createComponent('VEVENT'); - $ev->UID = 'uuid'; - $ev->DTSTART = '20120824T145700Z'; - $ev->RRULE = 'FREQ=YEARLY;INTERVAL=0'; - $this->vcal->add($ev); - - $it = new RecurrenceIterator($this->vcal,'uuid'); - $it->fastForward(new DateTime('2013-01-01 23:00:00', new DateTimeZone('UTC'))); - - // if we got this far.. it means we are no longer infinitely looping - - } - -} diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMinusOneProblemTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMinusOneProblemTest.php deleted file mode 100644 index 2c17f9f6be..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMinusOneProblemTest.php +++ /dev/null @@ -1,30 +0,0 @@ -VEVENT->UID); - - $this->assertTrue($it->valid()); - - } - -} diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMissingOverriddenTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMissingOverriddenTest.php deleted file mode 100644 index 1de517bf22..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMissingOverriddenTest.php +++ /dev/null @@ -1,63 +0,0 @@ -assertInstanceOf('Sabre\\VObject\\Component\\VCalendar', $vcal); - - $vcal->expand(new DateTime('2011-01-01'), new DateTime('2015-01-01')); - - $result = $vcal->serialize(); - - $output = <<assertEquals($output, str_replace("\r","",$result)); - - } - -} diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorTest.php deleted file mode 100644 index 7099cb108e..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorTest.php +++ /dev/null @@ -1,1452 +0,0 @@ -createComponent('VEVENT'); - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=DAILY;BYHOUR=10;BYMINUTE=5;BYSECOND=16;BYWEEKNO=32;BYYEARDAY=100,200'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07')); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertTrue($it->isInfinite()); - $this->assertEquals(array(10), $it->byHour); - $this->assertEquals(array(5), $it->byMinute); - $this->assertEquals(array(16), $it->bySecond); - $this->assertEquals(array(32), $it->byWeekNo); - $this->assertEquals(array(100,200), $it->byYearDay); - - } - - /** - * @expectedException InvalidArgumentException - * @depends testValues - */ - function testInvalidFreq() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - $ev->RRULE = 'FREQ=SMONTHLY;INTERVAL=3;UNTIL=20111025T000000Z'; - $ev->UID = 'foo'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - } - - /** - * @expectedException InvalidArgumentException - */ - function testVCalendarNoUID() { - - $vcal = new VCalendar(); - $it = new RecurrenceIterator($vcal); - - } - - /** - * @expectedException InvalidArgumentException - */ - function testVCalendarInvalidUID() { - - $vcal = new VCalendar(); - $it = new RecurrenceIterator($vcal,'foo'); - - } - - /** - * @depends testValues - */ - function testHourly() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=HOURLY;INTERVAL=3;UNTIL=20111025T000000Z'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07 12:00:00', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,$ev->uid); - - $this->assertEquals('hourly', $it->frequency); - $this->assertEquals(3, $it->interval); - $this->assertEquals(new DateTime('2011-10-25', new DateTimeZone('UTC')), $it->until); - - // Max is to prevent overflow - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07 12:00:00', $tz), - new DateTime('2011-10-07 15:00:00', $tz), - new DateTime('2011-10-07 18:00:00', $tz), - new DateTime('2011-10-07 21:00:00', $tz), - new DateTime('2011-10-08 00:00:00', $tz), - new DateTime('2011-10-08 03:00:00', $tz), - new DateTime('2011-10-08 06:00:00', $tz), - new DateTime('2011-10-08 09:00:00', $tz), - new DateTime('2011-10-08 12:00:00', $tz), - new DateTime('2011-10-08 15:00:00', $tz), - new DateTime('2011-10-08 18:00:00', $tz), - new DateTime('2011-10-08 21:00:00', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testDaily() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=DAILY;INTERVAL=3;UNTIL=20111025T000000Z'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,$ev->uid); - - $this->assertEquals('daily', $it->frequency); - $this->assertEquals(3, $it->interval); - $this->assertEquals(new DateTime('2011-10-25', new DateTimeZone('UTC')), $it->until); - - // Max is to prevent overflow - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07', $tz), - new DateTime('2011-10-10', $tz), - new DateTime('2011-10-13', $tz), - new DateTime('2011-10-16', $tz), - new DateTime('2011-10-19', $tz), - new DateTime('2011-10-22', $tz), - new DateTime('2011-10-25', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testNoRRULE() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,$ev->uid); - - $this->assertEquals('daily', $it->frequency); - $this->assertEquals(1, $it->interval); - - // Max is to prevent overflow - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testDailyByDayByHour() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=DAILY;BYDAY=SA,SU;BYHOUR=6,7'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-08 06:00:00', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('daily', $it->frequency); - $this->assertEquals(1, $it->interval); - $this->assertEquals(array('6','7'), $it->byHour); - $this->assertEquals(array('SA','SU'), $it->byDay); - - // Grabbing the next 12 items - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new datetime('2011-10-08 06:00:00', $tz), - new datetime('2011-10-08 07:00:00', $tz), - new datetime('2011-10-09 06:00:00', $tz), - new datetime('2011-10-09 07:00:00', $tz), - new datetime('2011-10-15 06:00:00', $tz), - new datetime('2011-10-15 07:00:00', $tz), - new datetime('2011-10-16 06:00:00', $tz), - new datetime('2011-10-16 07:00:00', $tz), - new datetime('2011-10-22 06:00:00', $tz), - new datetime('2011-10-22 07:00:00', $tz), - new datetime('2011-10-23 06:00:00', $tz), - new datetime('2011-10-23 07:00:00', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testDailyByHour() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=DAILY;INTERVAL=2;BYHOUR=10,11,12,13,14,15'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2012-10-11 12:00:00', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('daily', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(array('10','11','12','13','14','15'), $it->byHour); - - // Grabbing the next 12 items - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new datetime('2012-10-11 12:00:00', $tz), - new datetime('2012-10-11 13:00:00', $tz), - new datetime('2012-10-11 14:00:00', $tz), - new datetime('2012-10-11 15:00:00', $tz), - new datetime('2012-10-13 10:00:00', $tz), - new datetime('2012-10-13 11:00:00', $tz), - new datetime('2012-10-13 12:00:00', $tz), - new datetime('2012-10-13 13:00:00', $tz), - new datetime('2012-10-13 14:00:00', $tz), - new datetime('2012-10-13 15:00:00', $tz), - new datetime('2012-10-15 10:00:00', $tz), - new datetime('2012-10-15 11:00:00', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testDailyByDay() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=DAILY;INTERVAL=2;BYDAY=TU,WE,FR'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('daily', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(array('TU','WE','FR'), $it->byDay); - - // Grabbing the next 12 items - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07', $tz), - new DateTime('2011-10-11', $tz), - new DateTime('2011-10-19', $tz), - new DateTime('2011-10-21', $tz), - new DateTime('2011-10-25', $tz), - new DateTime('2011-11-02', $tz), - new DateTime('2011-11-04', $tz), - new DateTime('2011-11-08', $tz), - new DateTime('2011-11-16', $tz), - new DateTime('2011-11-18', $tz), - new DateTime('2011-11-22', $tz), - new DateTime('2011-11-30', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testWeekly() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=WEEKLY;INTERVAL=2;COUNT=10'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('weekly', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(10, $it->count); - - // Max is to prevent overflow - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07', $tz), - new DateTime('2011-10-21', $tz), - new DateTime('2011-11-04', $tz), - new DateTime('2011-11-18', $tz), - new DateTime('2011-12-02', $tz), - new DateTime('2011-12-16', $tz), - new DateTime('2011-12-30', $tz), - new DateTime('2012-01-13', $tz), - new DateTime('2012-01-27', $tz), - new DateTime('2012-02-10', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testWeeklyByDayByHour() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=WEEKLY;INTERVAL=2;BYDAY=TU,WE,FR;WKST=MO;BYHOUR=8,9,10'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07 08:00:00', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('weekly', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(array('TU','WE','FR'), $it->byDay); - $this->assertEquals(array('8','9','10'), $it->byHour); - $this->assertEquals('MO', $it->weekStart); - - // Grabbing the next 12 items - $max = 15; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07 08:00:00', $tz), - new DateTime('2011-10-07 09:00:00', $tz), - new DateTime('2011-10-07 10:00:00', $tz), - new DateTime('2011-10-18 08:00:00', $tz), - new DateTime('2011-10-18 09:00:00', $tz), - new DateTime('2011-10-18 10:00:00', $tz), - new DateTime('2011-10-19 08:00:00', $tz), - new DateTime('2011-10-19 09:00:00', $tz), - new DateTime('2011-10-19 10:00:00', $tz), - new DateTime('2011-10-21 08:00:00', $tz), - new DateTime('2011-10-21 09:00:00', $tz), - new DateTime('2011-10-21 10:00:00', $tz), - new DateTime('2011-11-01 08:00:00', $tz), - new DateTime('2011-11-01 09:00:00', $tz), - new DateTime('2011-11-01 10:00:00', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testWeeklyByDaySpecificHour() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=WEEKLY;INTERVAL=2;BYDAY=TU,WE,FR;WKST=SU'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07 18:00:00', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('weekly', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(array('TU','WE','FR'), $it->byDay); - $this->assertEquals('SU', $it->weekStart); - - // Grabbing the next 12 items - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07 18:00:00', $tz), - new DateTime('2011-10-18 18:00:00', $tz), - new DateTime('2011-10-19 18:00:00', $tz), - new DateTime('2011-10-21 18:00:00', $tz), - new DateTime('2011-11-01 18:00:00', $tz), - new DateTime('2011-11-02 18:00:00', $tz), - new DateTime('2011-11-04 18:00:00', $tz), - new DateTime('2011-11-15 18:00:00', $tz), - new DateTime('2011-11-16 18:00:00', $tz), - new DateTime('2011-11-18 18:00:00', $tz), - new DateTime('2011-11-29 18:00:00', $tz), - new DateTime('2011-11-30 18:00:00', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testWeeklyByDay() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=WEEKLY;INTERVAL=2;BYDAY=TU,WE,FR;WKST=SU'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-10-07', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('weekly', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(array('TU','WE','FR'), $it->byDay); - $this->assertEquals('SU', $it->weekStart); - - // Grabbing the next 12 items - $max = 12; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-10-07', $tz), - new DateTime('2011-10-18', $tz), - new DateTime('2011-10-19', $tz), - new DateTime('2011-10-21', $tz), - new DateTime('2011-11-01', $tz), - new DateTime('2011-11-02', $tz), - new DateTime('2011-11-04', $tz), - new DateTime('2011-11-15', $tz), - new DateTime('2011-11-16', $tz), - new DateTime('2011-11-18', $tz), - new DateTime('2011-11-29', $tz), - new DateTime('2011-11-30', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testMonthly() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=MONTHLY;INTERVAL=3;COUNT=5'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-12-05', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('monthly', $it->frequency); - $this->assertEquals(3, $it->interval); - $this->assertEquals(5, $it->count); - - $max = 14; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-12-05', $tz), - new DateTime('2012-03-05', $tz), - new DateTime('2012-06-05', $tz), - new DateTime('2012-09-05', $tz), - new DateTime('2012-12-05', $tz), - ), - $result - ); - - - } - - /** - * @depends testValues - */ - function testMonthlyEndOfMonth() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=MONTHLY;INTERVAL=2;COUNT=12'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-12-31', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('monthly', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(12, $it->count); - - $max = 14; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-12-31', $tz), - new DateTime('2012-08-31', $tz), - new DateTime('2012-10-31', $tz), - new DateTime('2012-12-31', $tz), - new DateTime('2013-08-31', $tz), - new DateTime('2013-10-31', $tz), - new DateTime('2013-12-31', $tz), - new DateTime('2014-08-31', $tz), - new DateTime('2014-10-31', $tz), - new DateTime('2014-12-31', $tz), - new DateTime('2015-08-31', $tz), - new DateTime('2015-10-31', $tz), - ), - $result - ); - - - } - - /** - * @depends testValues - */ - function testMonthlyByMonthDay() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=MONTHLY;INTERVAL=5;COUNT=9;BYMONTHDAY=1,31,-7'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-01-01', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('monthly', $it->frequency); - $this->assertEquals(5, $it->interval); - $this->assertEquals(9, $it->count); - $this->assertEquals(array(1, 31, -7), $it->byMonthDay); - - $max = 14; - $result = array(); - foreach($it as $item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-01-01', $tz), - new DateTime('2011-01-25', $tz), - new DateTime('2011-01-31', $tz), - new DateTime('2011-06-01', $tz), - new DateTime('2011-06-24', $tz), - new DateTime('2011-11-01', $tz), - new DateTime('2011-11-24', $tz), - new DateTime('2012-04-01', $tz), - new DateTime('2012-04-24', $tz), - ), - $result - ); - - } - - /** - * A pretty slow test. Had to be marked as 'medium' for phpunit to not die - * after 1 second. Would be good to optimize later. - * - * @depends testValues - * @medium - */ - function testMonthlyByDay() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=MONTHLY;INTERVAL=2;COUNT=16;BYDAY=MO,-2TU,+1WE,3TH'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-01-03', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('monthly', $it->frequency); - $this->assertEquals(2, $it->interval); - $this->assertEquals(16, $it->count); - $this->assertEquals(array('MO','-2TU','+1WE','3TH'), $it->byDay); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-01-03', $tz), - new DateTime('2011-01-05', $tz), - new DateTime('2011-01-10', $tz), - new DateTime('2011-01-17', $tz), - new DateTime('2011-01-18', $tz), - new DateTime('2011-01-20', $tz), - new DateTime('2011-01-24', $tz), - new DateTime('2011-01-31', $tz), - new DateTime('2011-03-02', $tz), - new DateTime('2011-03-07', $tz), - new DateTime('2011-03-14', $tz), - new DateTime('2011-03-17', $tz), - new DateTime('2011-03-21', $tz), - new DateTime('2011-03-22', $tz), - new DateTime('2011-03-28', $tz), - new DateTime('2011-05-02', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testMonthlyByDayByMonthDay() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=MONTHLY;COUNT=10;BYDAY=MO;BYMONTHDAY=1'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-08-01', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('monthly', $it->frequency); - $this->assertEquals(1, $it->interval); - $this->assertEquals(10, $it->count); - $this->assertEquals(array('MO'), $it->byDay); - $this->assertEquals(array(1), $it->byMonthDay); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-08-01', $tz), - new DateTime('2012-10-01', $tz), - new DateTime('2013-04-01', $tz), - new DateTime('2013-07-01', $tz), - new DateTime('2014-09-01', $tz), - new DateTime('2014-12-01', $tz), - new DateTime('2015-06-01', $tz), - new DateTime('2016-02-01', $tz), - new DateTime('2016-08-01', $tz), - new DateTime('2017-05-01', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testMonthlyByDayBySetPos() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=MONTHLY;COUNT=10;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=1,-1'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-01-03', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('monthly', $it->frequency); - $this->assertEquals(1, $it->interval); - $this->assertEquals(10, $it->count); - $this->assertEquals(array('MO','TU','WE','TH','FR'), $it->byDay); - $this->assertEquals(array(1,-1), $it->bySetPos); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-01-03', $tz), - new DateTime('2011-01-31', $tz), - new DateTime('2011-02-01', $tz), - new DateTime('2011-02-28', $tz), - new DateTime('2011-03-01', $tz), - new DateTime('2011-03-31', $tz), - new DateTime('2011-04-01', $tz), - new DateTime('2011-04-29', $tz), - new DateTime('2011-05-02', $tz), - new DateTime('2011-05-31', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testYearly() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=YEARLY;COUNT=10;INTERVAL=3'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-01-01', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('yearly', $it->frequency); - $this->assertEquals(3, $it->interval); - $this->assertEquals(10, $it->count); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-01-01', $tz), - new DateTime('2014-01-01', $tz), - new DateTime('2017-01-01', $tz), - new DateTime('2020-01-01', $tz), - new DateTime('2023-01-01', $tz), - new DateTime('2026-01-01', $tz), - new DateTime('2029-01-01', $tz), - new DateTime('2032-01-01', $tz), - new DateTime('2035-01-01', $tz), - new DateTime('2038-01-01', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testYearlyLeapYear() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=YEARLY;COUNT=3'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2012-02-29', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('yearly', $it->frequency); - $this->assertEquals(3, $it->count); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2012-02-29', $tz), - new DateTime('2016-02-29', $tz), - new DateTime('2020-02-29', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testYearlyByMonth() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=YEARLY;COUNT=8;INTERVAL=4;BYMONTH=4,10'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-04-07', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('yearly', $it->frequency); - $this->assertEquals(4, $it->interval); - $this->assertEquals(8, $it->count); - $this->assertEquals(array(4,10), $it->byMonth); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-04-07', $tz), - new DateTime('2011-10-07', $tz), - new DateTime('2015-04-07', $tz), - new DateTime('2015-10-07', $tz), - new DateTime('2019-04-07', $tz), - new DateTime('2019-10-07', $tz), - new DateTime('2023-04-07', $tz), - new DateTime('2023-10-07', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testYearlyByMonthByDay() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=YEARLY;COUNT=8;INTERVAL=5;BYMONTH=4,10;BYDAY=1MO,-1SU'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-04-04', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('yearly', $it->frequency); - $this->assertEquals(5, $it->interval); - $this->assertEquals(8, $it->count); - $this->assertEquals(array(4,10), $it->byMonth); - $this->assertEquals(array('1MO','-1SU'), $it->byDay); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $tz = new DateTimeZone('UTC'); - - $this->assertEquals( - array( - new DateTime('2011-04-04', $tz), - new DateTime('2011-04-24', $tz), - new DateTime('2011-10-03', $tz), - new DateTime('2011-10-30', $tz), - new DateTime('2016-04-04', $tz), - new DateTime('2016-04-24', $tz), - new DateTime('2016-10-03', $tz), - new DateTime('2016-10-30', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testFastForward() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=YEARLY;COUNT=8;INTERVAL=5;BYMONTH=4,10;BYDAY=1MO,-1SU'; - $dtStart = $vcal->createProperty('DTSTART'); - $dtStart->setDateTime(new DateTime('2011-04-04', new DateTimeZone('UTC'))); - - $ev->add($dtStart); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - // The idea is that we're fast-forwarding too far in the future, so - // there will be no results left. - $it->fastForward(new DateTime('2020-05-05', new DateTimeZone('UTC'))); - - $max = 20; - $result = array(); - while($item = $it->current()) { - - $result[] = $item; - $max--; - - if (!$max) break; - $it->next(); - - } - - $tz = new DateTimeZone('UTC'); - $this->assertEquals(array(), $result); - - } - - /** - * @depends testValues - */ - function testComplexExclusions() { - - $vcal = new VCalendar(); - $ev = $vcal->createComponent('VEVENT'); - - $ev->UID = 'bla'; - $ev->RRULE = 'FREQ=YEARLY;COUNT=10'; - $dtStart = $vcal->createProperty('DTSTART'); - - $tz = new DateTimeZone('Canada/Eastern'); - $dtStart->setDateTime(new DateTime('2011-01-01 13:50:20', $tz)); - - $exDate1 = $vcal->createProperty('EXDATE'); - $exDate1->setDateTimes(array(new DateTime('2012-01-01 13:50:20', $tz), new DateTime('2014-01-01 13:50:20', $tz))); - $exDate2 = $vcal->createProperty('EXDATE'); - $exDate2->setDateTimes(array(new DateTime('2016-01-01 13:50:20', $tz))); - - $ev->add($dtStart); - $ev->add($exDate1); - $ev->add($exDate2); - - $vcal->add($ev); - - $it = new RecurrenceIterator($vcal,(string)$ev->uid); - - $this->assertEquals('yearly', $it->frequency); - $this->assertEquals(1, $it->interval); - $this->assertEquals(10, $it->count); - - $max = 20; - $result = array(); - foreach($it as $k=>$item) { - - $result[] = $item; - $max--; - - if (!$max) break; - - } - - $this->assertEquals( - array( - new DateTime('2011-01-01 13:50:20', $tz), - new DateTime('2013-01-01 13:50:20', $tz), - new DateTime('2015-01-01 13:50:20', $tz), - new DateTime('2017-01-01 13:50:20', $tz), - new DateTime('2018-01-01 13:50:20', $tz), - new DateTime('2019-01-01 13:50:20', $tz), - new DateTime('2020-01-01 13:50:20', $tz), - ), - $result - ); - - } - - /** - * @depends testValues - */ - function testOverridenEvent() { - - $vcal = new VCalendar(); - - $ev1 = $vcal->createComponent('VEVENT'); - $ev1->UID = 'overridden'; - $ev1->RRULE = 'FREQ=DAILY;COUNT=10'; - $ev1->DTSTART = '20120107T120000Z'; - $ev1->SUMMARY = 'baseEvent'; - - $vcal->add($ev1); - - // ev2 overrides an event, and puts it on 2pm instead. - $ev2 = $vcal->createComponent('VEVENT'); - $ev2->UID = 'overridden'; - $ev2->{'RECURRENCE-ID'} = '20120110T120000Z'; - $ev2->DTSTART = '20120110T140000Z'; - $ev2->SUMMARY = 'Event 2'; - - $vcal->add($ev2); - - // ev3 overrides an event, and puts it 2 days and 2 hours later - $ev3 = $vcal->createComponent('VEVENT'); - $ev3->UID = 'overridden'; - $ev3->{'RECURRENCE-ID'} = '20120113T120000Z'; - $ev3->DTSTART = '20120115T140000Z'; - $ev3->SUMMARY = 'Event 3'; - - $vcal->add($ev3); - - $it = new RecurrenceIterator($vcal,'overridden'); - - $dates = array(); - $summaries = array(); - while($it->valid()) { - - $dates[] = $it->getDTStart(); - $summaries[] = (string)$it->getEventObject()->SUMMARY; - $it->next(); - - } - - $tz = new DateTimeZone('UTC'); - $this->assertEquals(array( - new DateTime('2012-01-07 12:00:00',$tz), - new DateTime('2012-01-08 12:00:00',$tz), - new DateTime('2012-01-09 12:00:00',$tz), - new DateTime('2012-01-10 14:00:00',$tz), - new DateTime('2012-01-11 12:00:00',$tz), - new DateTime('2012-01-12 12:00:00',$tz), - new DateTime('2012-01-14 12:00:00',$tz), - new DateTime('2012-01-15 12:00:00',$tz), - new DateTime('2012-01-15 14:00:00',$tz), - new DateTime('2012-01-16 12:00:00',$tz), - ), $dates); - - $this->assertEquals(array( - 'baseEvent', - 'baseEvent', - 'baseEvent', - 'Event 2', - 'baseEvent', - 'baseEvent', - 'baseEvent', - 'baseEvent', - 'Event 3', - 'baseEvent', - ), $summaries); - - } - - /** - * @depends testValues - */ - function testOverridenEvent2() { - - $vcal = new VCalendar(); - - $ev1 = $vcal->createComponent('VEVENT'); - $ev1->UID = 'overridden'; - $ev1->RRULE = 'FREQ=WEEKLY;COUNT=3'; - $ev1->DTSTART = '20120112T120000Z'; - $ev1->SUMMARY = 'baseEvent'; - - $vcal->add($ev1); - - // ev2 overrides an event, and puts it 6 days earlier instead. - $ev2 = $vcal->createComponent('VEVENT'); - $ev2->UID = 'overridden'; - $ev2->{'RECURRENCE-ID'} = '20120119T120000Z'; - $ev2->DTSTART = '20120113T120000Z'; - $ev2->SUMMARY = 'Override!'; - - $vcal->add($ev2); - - $it = new RecurrenceIterator($vcal,'overridden'); - - $dates = array(); - $summaries = array(); - while($it->valid()) { - - $dates[] = $it->getDTStart(); - $summaries[] = (string)$it->getEventObject()->SUMMARY; - $it->next(); - - } - - $tz = new DateTimeZone('UTC'); - $this->assertEquals(array( - new DateTime('2012-01-12 12:00:00',$tz), - new DateTime('2012-01-13 12:00:00',$tz), - new DateTime('2012-01-26 12:00:00',$tz), - - ), $dates); - - $this->assertEquals(array( - 'baseEvent', - 'Override!', - 'baseEvent', - ), $summaries); - - } - - /** - * @depends testValues - */ - function testOverridenEventNoValuesExpected() { - - $vcal = new VCalendar(); - $ev1 = $vcal->createComponent('VEVENT'); - - $ev1->UID = 'overridden'; - $ev1->RRULE = 'FREQ=WEEKLY;COUNT=3'; - $ev1->DTSTART = '20120124T120000Z'; - $ev1->SUMMARY = 'baseEvent'; - - $vcal->add($ev1); - - // ev2 overrides an event, and puts it 6 days earlier instead. - $ev2 = $vcal->createComponent('VEVENT'); - $ev2->UID = 'overridden'; - $ev2->{'RECURRENCE-ID'} = '20120131T120000Z'; - $ev2->DTSTART = '20120125T120000Z'; - $ev2->SUMMARY = 'Override!'; - - $vcal->add($ev2); - - $it = new RecurrenceIterator($vcal,'overridden'); - - $dates = array(); - $summaries = array(); - - // The reported problem was specifically related to the VCALENDAR - // expansion. In this parcitular case, we had to forward to the 28th of - // january. - $it->fastForward(new DateTime('2012-01-28 23:00:00')); - - // We stop the loop when it hits the 6th of februari. Normally this - // iterator would hit 24, 25 (overriden from 31) and 7 feb but because - // we 'filter' from the 28th till the 6th, we should get 0 results. - while($it->valid() && $it->getDTSTart() < new DateTime('2012-02-06 23:00:00')) { - - $dates[] = $it->getDTStart(); - $summaries[] = (string)$it->getEventObject()->SUMMARY; - $it->next(); - - } - - $this->assertEquals(array(), $dates); - $this->assertEquals(array(), $summaries); - - } -} - diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.ics b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.ics deleted file mode 100644 index 1663c783d8..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.ics +++ /dev/null @@ -1,39 +0,0 @@ -BEGIN:VCALENDAR -VERSION:2.0 -X-WR-TIMEZONE:America/New_York -PRODID:-//www.churchcommunitybuilder.com//Church Community Builder//EN -CALSCALE:GREGORIAN -METHOD:PUBLISH -X-WR-CALNAME:Test Event -BEGIN:VTIMEZONE -TZID:America/New_York -X-LIC-LOCATION:America/New_York -BEGIN:DAYLIGHT -TZOFFSETFROM:-0500 -TZOFFSETTO:-0400 -TZNAME:EDT -DTSTART:19700308T020000 -RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU -END:DAYLIGHT -BEGIN:STANDARD -TZOFFSETFROM:-0400 -TZOFFSETTO:-0500 -TZNAME:EST -DTSTART:19701101T020000 -RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU -END:STANDARD -END:VTIMEZONE -BEGIN:VEVENT -UID:10621-1440@ccbchurch.com -DTSTART;TZID=America/New_York:20130923T183000 -DTEND;TZID=America/New_York:20130923T203000 -DTSTAMP:20131216T170211 -RRULE:FREQ=WEEKLY;UNTIL=20131118T183000 -CREATED:20130423T161111 -DESCRIPTION:Test Event ending November 11, 2013 -LAST-MODIFIED:20131126T163428 -SEQUENCE:1387231331 -SUMMARY:Test -TRANSP:OPAQUE -END:VEVENT -END:VCALENDAR diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.php deleted file mode 100644 index a8e4671d98..0000000000 --- a/vendor/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorUntilRespectsTimezoneTest.php +++ /dev/null @@ -1,55 +0,0 @@ -assertEquals("America/New_York", $ri->until->getTimezone()->getName()); - } - - public function testUntilEndingInZIsUtc() - { - $ics_data = <<assertEquals("UTC", $ri->until->getTimezone()->getName()); - } -} - diff --git a/vendor/sabre/vobject/tests/Sabre/VObject/TimeZoneUtilTest.php b/vendor/sabre/vobject/tests/Sabre/VObject/TimeZoneUtilTest.php index 6e4204dc53..fd2dec8e83 100644 --- a/vendor/sabre/vobject/tests/Sabre/VObject/TimeZoneUtilTest.php +++ b/vendor/sabre/vobject/tests/Sabre/VObject/TimeZoneUtilTest.php @@ -155,7 +155,7 @@ HI; $tz = TimeZoneUtil::getTimeZone('GMT-0400', null, true); - if (version_compare(PHP_VERSION, '5.5.10', '>=')) { + if (version_compare(PHP_VERSION, '5.5.10', '>=') && !defined('HHVM_VERSION')) { $ex = new \DateTimeZone('-04:00'); } else { $ex = new \DateTimeZone('Etc/GMT-4'); @@ -304,7 +304,7 @@ END:VCALENDAR HI; $tz = TimeZoneUtil::getTimeZone('/freeassociation.sourceforge.net/Tzfile/SystemV/EST5EDT', Reader::read($vobj), true); - if (version_compare(PHP_VERSION, '5.5.10', '>=')) { + if (version_compare(PHP_VERSION, '5.5.10', '>=') && !defined('HHVM_VERSION')) { $ex = new \DateTimeZone('America/New_York'); } else { $ex = new \DateTimeZone('EST5EDT');