From 293a434e4dfd159fc93104ff2b3e8d135cb4d977 Mon Sep 17 00:00:00 2001 From: Sebastian Sellmeier Date: Mon, 13 May 2019 22:20:55 +0200 Subject: [PATCH] Update components, Add tests for ulid-provider, Fix unit-test deprecations --- composer.json | 4 +- composer.lock | 402 ++++++++++++-------- config/packages/sensio_framework_extra.yaml | 3 + src/Service/Provider/UlidProvider.php | 2 +- tests/Controller/EndpointControllerTest.php | 24 ++ tests/Service/Provider/UlidProviderTest.php | 43 +++ 6 files changed, 308 insertions(+), 170 deletions(-) create mode 100644 config/packages/sensio_framework_extra.yaml create mode 100644 tests/Controller/EndpointControllerTest.php create mode 100644 tests/Service/Provider/UlidProviderTest.php diff --git a/composer.json b/composer.json index 4b1a745..75a5f8d 100644 --- a/composer.json +++ b/composer.json @@ -7,7 +7,7 @@ "ext-json": "*", "czproject/git-php": "^3.12", "php-http/httplug-pack": "^1.1", - "robinvdvleuten/ulid": "^1.1", + "robinvdvleuten/ulid": "^3.0", "sensio/framework-extra-bundle": "^5.1", "symfony/apache-pack": "^1.0", "symfony/asset": "^4.0", @@ -24,6 +24,7 @@ "symfony/yaml": "^4.0" }, "require-dev": { + "symfony/browser-kit": "^4.1", "symfony/debug-pack": "^1.0", "symfony/phpunit-bridge": "^4.0", "symfony/web-server-bundle": "^4.0" @@ -67,7 +68,6 @@ }, "extra": { "symfony": { - "id": "01C6C88WKQP047F412R9EYCFV0", "allow-contrib": false } } diff --git a/composer.lock b/composer.lock index 8bc9892..b2fd407 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d00712f3e61e83e1c7eec658f4e1ef63", + "content-hash": "250bcfea6bef163baca820065032d99f", "packages": [ { "name": "clue/stream-filter", @@ -443,16 +443,16 @@ }, { "name": "doctrine/persistence", - "version": "v1.1.0", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/doctrine/persistence.git", - "reference": "c0f1c17602afc18b4cbd8e1c8125f264c9cf7d38" + "reference": "3da7c9d125591ca83944f477e65ed3d7b4617c48" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/persistence/zipball/c0f1c17602afc18b4cbd8e1c8125f264c9cf7d38", - "reference": "c0f1c17602afc18b4cbd8e1c8125f264c9cf7d38", + "url": "https://api.github.com/repos/doctrine/persistence/zipball/3da7c9d125591ca83944f477e65ed3d7b4617c48", + "reference": "3da7c9d125591ca83944f477e65ed3d7b4617c48", "shasum": "" }, "require": { @@ -521,7 +521,7 @@ "orm", "persistence" ], - "time": "2018-11-21T00:33:13+00:00" + "time": "2019-04-23T08:28:24+00:00" }, { "name": "doctrine/reflection", @@ -738,55 +738,6 @@ ], "time": "2019-02-16T17:20:43+00:00" }, - { - "name": "paragonie/random_compat", - "version": "v2.0.18", - "source": { - "type": "git", - "url": "https://github.com/paragonie/random_compat.git", - "reference": "0a58ef6e3146256cc3dc7cc393927bcc7d1b72db" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/0a58ef6e3146256cc3dc7cc393927bcc7d1b72db", - "reference": "0a58ef6e3146256cc3dc7cc393927bcc7d1b72db", - "shasum": "" - }, - "require": { - "php": ">=5.2.0" - }, - "require-dev": { - "phpunit/phpunit": "4.*|5.*" - }, - "suggest": { - "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." - }, - "type": "library", - "autoload": { - "files": [ - "lib/random.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paragon Initiative Enterprises", - "email": "security@paragonie.com", - "homepage": "https://paragonie.com" - } - ], - "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", - "keywords": [ - "csprng", - "polyfill", - "pseudorandom", - "random" - ], - "time": "2019-01-03T20:59:08+00:00" - }, { "name": "php-http/client-common", "version": "2.0.0", @@ -1040,16 +991,16 @@ }, { "name": "php-http/httplug-bundle", - "version": "1.15.1", + "version": "1.15.2", "source": { "type": "git", "url": "https://github.com/php-http/HttplugBundle.git", - "reference": "8da8c77edbe59beb2b5be2225933b4f5f4a80276" + "reference": "35d281804a90f0359aa9da5b5b1f55c18aeafaf8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-http/HttplugBundle/zipball/8da8c77edbe59beb2b5be2225933b4f5f4a80276", - "reference": "8da8c77edbe59beb2b5be2225933b4f5f4a80276", + "url": "https://api.github.com/repos/php-http/HttplugBundle/zipball/35d281804a90f0359aa9da5b5b1f55c18aeafaf8", + "reference": "35d281804a90f0359aa9da5b5b1f55c18aeafaf8", "shasum": "" }, "require": { @@ -1137,7 +1088,7 @@ "message", "php-http" ], - "time": "2019-04-12T11:11:27+00:00" + "time": "2019-04-18T14:01:25+00:00" }, { "name": "php-http/httplug-pack", @@ -1607,16 +1558,16 @@ }, { "name": "psr/http-factory", - "version": "1.0.0", + "version": "1.0.1", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "378bfe27931ecc54ff824a20d6f6bfc303bbd04c" + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/378bfe27931ecc54ff824a20d6f6bfc303bbd04c", - "reference": "378bfe27931ecc54ff824a20d6f6bfc303bbd04c", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", "shasum": "" }, "require": { @@ -1655,7 +1606,7 @@ "request", "response" ], - "time": "2018-07-30T21:54:04+00:00" + "time": "2019-04-30T12:38:16+00:00" }, { "name": "psr/http-message", @@ -1804,29 +1755,29 @@ }, { "name": "robinvdvleuten/ulid", - "version": "v1.1.0", + "version": "v3.0.0", "source": { "type": "git", "url": "https://github.com/robinvdvleuten/php-ulid.git", - "reference": "9cb26f8192ce04a1ab8c75775d9689be891805b5" + "reference": "84eb606534529d3804c7a515359a78952d135fcb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/robinvdvleuten/php-ulid/zipball/9cb26f8192ce04a1ab8c75775d9689be891805b5", - "reference": "9cb26f8192ce04a1ab8c75775d9689be891805b5", + "url": "https://api.github.com/repos/robinvdvleuten/php-ulid/zipball/84eb606534529d3804c7a515359a78952d135fcb", + "reference": "84eb606534529d3804c7a515359a78952d135fcb", "shasum": "" }, "require": { - "paragonie/random_compat": "^2.0" + "php": "^7.1" }, "require-dev": { - "phpbench/phpbench": "1.0.*@dev", - "phpunit/phpunit": "^5.7" + "phpbench/phpbench": "^0.15", + "phpunit/phpunit": "^7.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -1846,7 +1797,7 @@ ], "description": "Universally Unique Lexicographically Sortable Identifier (ULID) implementation for PHP.", "homepage": "https://github.com/robinvdvleuten/php-ulid", - "time": "2017-09-04T07:17:03+00:00" + "time": "2019-01-20T14:39:07+00:00" }, { "name": "sensio/framework-extra-bundle", @@ -1945,7 +1896,7 @@ }, { "name": "symfony/asset", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/asset.git", @@ -2001,7 +1952,7 @@ }, { "name": "symfony/cache", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", @@ -2078,7 +2029,7 @@ }, { "name": "symfony/config", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/config.git", @@ -2141,7 +2092,7 @@ }, { "name": "symfony/console", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/console.git", @@ -2213,16 +2164,16 @@ }, { "name": "symfony/contracts", - "version": "v1.0.2", + "version": "v1.1.0", "source": { "type": "git", "url": "https://github.com/symfony/contracts.git", - "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf" + "reference": "d3636025e8253c6144358ec0a62773cae588395b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/contracts/zipball/1aa7ab2429c3d594dd70689604b5cf7421254cdf", - "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf", + "url": "https://api.github.com/repos/symfony/contracts/zipball/d3636025e8253c6144358ec0a62773cae588395b", + "reference": "d3636025e8253c6144358ec0a62773cae588395b", "shasum": "" }, "require": { @@ -2230,19 +2181,22 @@ }, "require-dev": { "psr/cache": "^1.0", - "psr/container": "^1.0" + "psr/container": "^1.0", + "symfony/polyfill-intl-idn": "^1.10" }, "suggest": { "psr/cache": "When using the Cache contracts", "psr/container": "When using the Service contracts", "symfony/cache-contracts-implementation": "", + "symfony/event-dispatcher-implementation": "", + "symfony/http-client-contracts-implementation": "", "symfony/service-contracts-implementation": "", "symfony/translation-contracts-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "1.1-dev" } }, "autoload": { @@ -2277,11 +2231,11 @@ "interoperability", "standards" ], - "time": "2018-12-05T08:06:11+00:00" + "time": "2019-04-27T14:29:50+00:00" }, { "name": "symfony/debug", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", @@ -2337,16 +2291,16 @@ }, { "name": "symfony/dependency-injection", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "2748643dd378626c4d348a31ad12394e2d6f7ea8" + "reference": "d161c0c8bc77ad6fdb8f5083b9e34c3015d43eb1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/2748643dd378626c4d348a31ad12394e2d6f7ea8", - "reference": "2748643dd378626c4d348a31ad12394e2d6f7ea8", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/d161c0c8bc77ad6fdb8f5083b9e34c3015d43eb1", + "reference": "d161c0c8bc77ad6fdb8f5083b9e34c3015d43eb1", "shasum": "" }, "require": { @@ -2406,11 +2360,11 @@ ], "description": "Symfony DependencyInjection Component", "homepage": "https://symfony.com", - "time": "2019-04-16T11:19:53+00:00" + "time": "2019-04-27T11:48:17+00:00" }, { "name": "symfony/dotenv", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/dotenv.git", @@ -2467,7 +2421,7 @@ }, { "name": "symfony/event-dispatcher", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", @@ -2531,7 +2485,7 @@ }, { "name": "symfony/filesystem", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", @@ -2581,7 +2535,7 @@ }, { "name": "symfony/finder", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", @@ -2630,16 +2584,16 @@ }, { "name": "symfony/flex", - "version": "v1.2.3", + "version": "v1.2.5", "source": { "type": "git", "url": "https://github.com/symfony/flex.git", - "reference": "d65041a4c9b1dbcd606f8be3a5bae2bee4534f6a" + "reference": "27909122a3da4676c3dc5dc34c8f82323c610d69" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/flex/zipball/d65041a4c9b1dbcd606f8be3a5bae2bee4534f6a", - "reference": "d65041a4c9b1dbcd606f8be3a5bae2bee4534f6a", + "url": "https://api.github.com/repos/symfony/flex/zipball/27909122a3da4676c3dc5dc34c8f82323c610d69", + "reference": "27909122a3da4676c3dc5dc34c8f82323c610d69", "shasum": "" }, "require": { @@ -2675,20 +2629,20 @@ } ], "description": "Composer plugin for Symfony", - "time": "2019-04-16T10:04:15+00:00" + "time": "2019-05-07T08:10:46+00:00" }, { "name": "symfony/framework-bundle", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "98e203073ad9fd05929b52849a300a81bf0d9ec9" + "reference": "2748b12d8c456dbfeae149fc88b3012a333d817b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/98e203073ad9fd05929b52849a300a81bf0d9ec9", - "reference": "98e203073ad9fd05929b52849a300a81bf0d9ec9", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/2748b12d8c456dbfeae149fc88b3012a333d817b", + "reference": "2748b12d8c456dbfeae149fc88b3012a333d817b", "shasum": "" }, "require": { @@ -2704,7 +2658,7 @@ "symfony/http-foundation": "^4.2.5", "symfony/http-kernel": "^4.2", "symfony/polyfill-mbstring": "~1.0", - "symfony/routing": "^4.1" + "symfony/routing": "^4.2.8" }, "conflict": { "phpdocumentor/reflection-docblock": "<3.0", @@ -2794,20 +2748,20 @@ ], "description": "Symfony FrameworkBundle", "homepage": "https://symfony.com", - "time": "2019-04-17T15:01:37+00:00" + "time": "2019-05-01T08:36:31+00:00" }, { "name": "symfony/http-foundation", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "6ebbe61f48069033225c9d3fa7eb5ed116d766d6" + "reference": "1ea878bd3af18f934dedb8c0de60656a9a31a718" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/6ebbe61f48069033225c9d3fa7eb5ed116d766d6", - "reference": "6ebbe61f48069033225c9d3fa7eb5ed116d766d6", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/1ea878bd3af18f934dedb8c0de60656a9a31a718", + "reference": "1ea878bd3af18f934dedb8c0de60656a9a31a718", "shasum": "" }, "require": { @@ -2848,20 +2802,20 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2019-04-17T14:56:00+00:00" + "time": "2019-05-01T08:36:31+00:00" }, { "name": "symfony/http-kernel", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "3db83303dbc1da9777e5ff63423b8b7fde423a1b" + "reference": "a7713bc522f1a1cdf0b39f809fa4542523fc3114" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/3db83303dbc1da9777e5ff63423b8b7fde423a1b", - "reference": "3db83303dbc1da9777e5ff63423b8b7fde423a1b", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/a7713bc522f1a1cdf0b39f809fa4542523fc3114", + "reference": "a7713bc522f1a1cdf0b39f809fa4542523fc3114", "shasum": "" }, "require": { @@ -2937,20 +2891,20 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2019-04-17T16:17:13+00:00" + "time": "2019-05-01T13:31:08+00:00" }, { "name": "symfony/monolog-bridge", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/monolog-bridge.git", - "reference": "472c74b350542e51373dcb159c0dcc234dc74e38" + "reference": "06cd3ca9f3fb68e21b227636671d7638dbe90cb3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/472c74b350542e51373dcb159c0dcc234dc74e38", - "reference": "472c74b350542e51373dcb159c0dcc234dc74e38", + "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/06cd3ca9f3fb68e21b227636671d7638dbe90cb3", + "reference": "06cd3ca9f3fb68e21b227636671d7638dbe90cb3", "shasum": "" }, "require": { @@ -3005,7 +2959,7 @@ ], "description": "Symfony Monolog Bridge", "homepage": "https://symfony.com", - "time": "2019-02-28T17:49:31+00:00" + "time": "2019-05-01T08:36:31+00:00" }, { "name": "symfony/monolog-bundle", @@ -3072,7 +3026,7 @@ }, { "name": "symfony/options-resolver", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", @@ -3169,7 +3123,7 @@ }, { "name": "Gert de Pagter", - "email": "backendtea@gmail.com" + "email": "BackEndTea@gmail.com" } ], "description": "Symfony polyfill for ctype functions", @@ -3243,16 +3197,16 @@ }, { "name": "symfony/routing", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "0e5719d216017b1a0342fa48e86467cedca1c954" + "reference": "f4e43bb0dff56f0f62fa056c82d7eadcdb391bab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/0e5719d216017b1a0342fa48e86467cedca1c954", - "reference": "0e5719d216017b1a0342fa48e86467cedca1c954", + "url": "https://api.github.com/repos/symfony/routing/zipball/f4e43bb0dff56f0f62fa056c82d7eadcdb391bab", + "reference": "f4e43bb0dff56f0f62fa056c82d7eadcdb391bab", "shasum": "" }, "require": { @@ -3315,11 +3269,11 @@ "uri", "url" ], - "time": "2019-04-14T18:04:59+00:00" + "time": "2019-04-27T09:38:08+00:00" }, { "name": "symfony/stopwatch", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", @@ -3369,22 +3323,22 @@ }, { "name": "symfony/twig-bridge", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "db70a233d660b96a883150d68fa0a5a882f2ba89" + "reference": "4dcd115799163409c74ad54e9a3788211daa9f74" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/db70a233d660b96a883150d68fa0a5a882f2ba89", - "reference": "db70a233d660b96a883150d68fa0a5a882f2ba89", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/4dcd115799163409c74ad54e9a3788211daa9f74", + "reference": "4dcd115799163409c74ad54e9a3788211daa9f74", "shasum": "" }, "require": { "php": "^7.1.3", "symfony/contracts": "^1.0.2", - "twig/twig": "^1.38.1|^2.7.1" + "twig/twig": "^1.40|^2.9" }, "conflict": { "symfony/console": "<3.4", @@ -3457,20 +3411,20 @@ ], "description": "Symfony Twig Bridge", "homepage": "https://symfony.com", - "time": "2019-04-12T13:50:35+00:00" + "time": "2019-05-01T05:55:04+00:00" }, { "name": "symfony/twig-bundle", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/twig-bundle.git", - "reference": "321d5bd0608f3cf34062c47edfe6079556f6d6f1" + "reference": "0c6c01def1e1fec47cf68fed50057f844268d3d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/321d5bd0608f3cf34062c47edfe6079556f6d6f1", - "reference": "321d5bd0608f3cf34062c47edfe6079556f6d6f1", + "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/0c6c01def1e1fec47cf68fed50057f844268d3d0", + "reference": "0c6c01def1e1fec47cf68fed50057f844268d3d0", "shasum": "" }, "require": { @@ -3480,7 +3434,7 @@ "symfony/http-kernel": "~4.1", "symfony/polyfill-ctype": "~1.8", "symfony/twig-bridge": "^4.2", - "twig/twig": "~1.34|~2.4" + "twig/twig": "~1.40|~2.9" }, "conflict": { "symfony/dependency-injection": "<4.1", @@ -3533,11 +3487,11 @@ ], "description": "Symfony TwigBundle", "homepage": "https://symfony.com", - "time": "2019-04-11T11:27:41+00:00" + "time": "2019-04-28T07:09:27+00:00" }, { "name": "symfony/var-exporter", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", @@ -3628,7 +3582,7 @@ }, { "name": "symfony/yaml", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", @@ -3687,16 +3641,16 @@ }, { "name": "twig/twig", - "version": "v2.8.1", + "version": "v2.9.0", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "91cc2594d3143761ce0399c1caffd0b500ffe5b9" + "reference": "82a1c055c8ed4c4705023bfd0405f3c74db6e3ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/91cc2594d3143761ce0399c1caffd0b500ffe5b9", - "reference": "91cc2594d3143761ce0399c1caffd0b500ffe5b9", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/82a1c055c8ed4c4705023bfd0405f3c74db6e3ae", + "reference": "82a1c055c8ed4c4705023bfd0405f3c74db6e3ae", "shasum": "" }, "require": { @@ -3712,7 +3666,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.8-dev" + "dev-master": "2.9-dev" } }, "autoload": { @@ -3750,7 +3704,7 @@ "keywords": [ "templating" ], - "time": "2019-04-16T17:14:24+00:00" + "time": "2019-04-28T06:57:38+00:00" } ], "packages-dev": [ @@ -3804,9 +3758,66 @@ ], "time": "2018-07-27T15:41:37+00:00" }, + { + "name": "symfony/browser-kit", + "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/browser-kit.git", + "reference": "c09c18cca96d7067152f78956faf55346c338283" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/c09c18cca96d7067152f78956faf55346c338283", + "reference": "c09c18cca96d7067152f78956faf55346c338283", + "shasum": "" + }, + "require": { + "php": "^7.1.3", + "symfony/dom-crawler": "~3.4|~4.0" + }, + "require-dev": { + "symfony/css-selector": "~3.4|~4.0", + "symfony/process": "~3.4|~4.0" + }, + "suggest": { + "symfony/process": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.2-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\BrowserKit\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony BrowserKit Component", + "homepage": "https://symfony.com", + "time": "2019-04-07T09:56:43+00:00" + }, { "name": "symfony/debug-bundle", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/debug-bundle.git", @@ -3900,18 +3911,75 @@ "description": "A debug pack for Symfony projects", "time": "2018-12-10T12:11:11+00:00" }, + { + "name": "symfony/dom-crawler", + "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/dom-crawler.git", + "reference": "53c97769814c80a84a8403efcf3ae7ae966d53bb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/53c97769814c80a84a8403efcf3ae7ae966d53bb", + "reference": "53c97769814c80a84a8403efcf3ae7ae966d53bb", + "shasum": "" + }, + "require": { + "php": "^7.1.3", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0" + }, + "require-dev": { + "symfony/css-selector": "~3.4|~4.0" + }, + "suggest": { + "symfony/css-selector": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.2-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\DomCrawler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony DomCrawler Component", + "homepage": "https://symfony.com", + "time": "2019-02-23T15:17:42+00:00" + }, { "name": "symfony/phpunit-bridge", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "12593ad0bc54658d9bc74fa240a545b3873b4626" + "reference": "31f2e3c10bc9bd955ca1ae3e4da2bb489205714a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/12593ad0bc54658d9bc74fa240a545b3873b4626", - "reference": "12593ad0bc54658d9bc74fa240a545b3873b4626", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/31f2e3c10bc9bd955ca1ae3e4da2bb489205714a", + "reference": "31f2e3c10bc9bd955ca1ae3e4da2bb489205714a", "shasum": "" }, "require": { @@ -3963,7 +4031,7 @@ ], "description": "Symfony PHPUnit Bridge", "homepage": "https://symfony.com", - "time": "2019-04-16T09:36:45+00:00" + "time": "2019-04-23T14:37:24+00:00" }, { "name": "symfony/polyfill-php72", @@ -4022,7 +4090,7 @@ }, { "name": "symfony/process", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", @@ -4099,16 +4167,16 @@ }, { "name": "symfony/var-dumper", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "e760a38e12b15032325e64be63f7ffc1817af617" + "reference": "3c4084cb1537c0e2ad41aad622bbf55a44a5c9ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/e760a38e12b15032325e64be63f7ffc1817af617", - "reference": "e760a38e12b15032325e64be63f7ffc1817af617", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/3c4084cb1537c0e2ad41aad622bbf55a44a5c9ce", + "reference": "3c4084cb1537c0e2ad41aad622bbf55a44a5c9ce", "shasum": "" }, "require": { @@ -4171,20 +4239,20 @@ "debug", "dump" ], - "time": "2019-04-17T14:57:01+00:00" + "time": "2019-05-01T12:55:36+00:00" }, { "name": "symfony/web-profiler-bundle", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/web-profiler-bundle.git", - "reference": "b54819597b9638e192007a23e159fd5e5e09f45b" + "reference": "f4c054dad30b46f23aae60ecfedacc08462c47ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/b54819597b9638e192007a23e159fd5e5e09f45b", - "reference": "b54819597b9638e192007a23e159fd5e5e09f45b", + "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/f4c054dad30b46f23aae60ecfedacc08462c47ef", + "reference": "f4c054dad30b46f23aae60ecfedacc08462c47ef", "shasum": "" }, "require": { @@ -4237,11 +4305,11 @@ ], "description": "Symfony WebProfilerBundle", "homepage": "https://symfony.com", - "time": "2019-04-11T11:58:13+00:00" + "time": "2019-04-27T11:48:17+00:00" }, { "name": "symfony/web-server-bundle", - "version": "v4.2.7", + "version": "v4.2.8", "source": { "type": "git", "url": "https://github.com/symfony/web-server-bundle.git", diff --git a/config/packages/sensio_framework_extra.yaml b/config/packages/sensio_framework_extra.yaml new file mode 100644 index 0000000..1821ccc --- /dev/null +++ b/config/packages/sensio_framework_extra.yaml @@ -0,0 +1,3 @@ +sensio_framework_extra: + router: + annotations: false diff --git a/src/Service/Provider/UlidProvider.php b/src/Service/Provider/UlidProvider.php index 77a19a3..d4294b0 100644 --- a/src/Service/Provider/UlidProvider.php +++ b/src/Service/Provider/UlidProvider.php @@ -27,6 +27,6 @@ class UlidProvider */ public function provideUlid() { - return strtoupper(Ulid::generate()); + return (string) Ulid::generate(); } } diff --git a/tests/Controller/EndpointControllerTest.php b/tests/Controller/EndpointControllerTest.php new file mode 100644 index 0000000..7f045cc --- /dev/null +++ b/tests/Controller/EndpointControllerTest.php @@ -0,0 +1,24 @@ +request('GET', '/ulid'); + $response = $client->getResponse(); + + $this->assertEquals(200, $response->getStatusCode()); + $this->assertEquals('application/json', $response->headers->get('Content-Type')); + + $data = json_decode($response->getContent(), true); + + $this->assertEquals(JSON_ERROR_NONE, json_last_error()); + $this->assertArrayHasKey('ulid', $data); + } +} diff --git a/tests/Service/Provider/UlidProviderTest.php b/tests/Service/Provider/UlidProviderTest.php new file mode 100644 index 0000000..53010ee --- /dev/null +++ b/tests/Service/Provider/UlidProviderTest.php @@ -0,0 +1,43 @@ +get(UlidProvider::class); + $this->assertInstanceOf(UlidProvider::class, $ulidProvider); + + return $ulidProvider; + } + + /** + * @depends testServiceIsAvailable + * + * @param UlidProvider $ulidProvider + */ + public function testUlidLength(UlidProvider $ulidProvider) + { + $this->assertSame(26, strlen((string) $ulidProvider->provideUlid())); + } + + /** + * @depends testServiceIsAvailable + * + * @param UlidProvider $ulidProvider + */ + public function testUlidIsUppercased(UlidProvider $ulidProvider) + { + $this->assertRegExp('/[0-9][A-Z]/', (string) $ulidProvider->provideUlid()); + } +}