diff --git a/.github/workflows/coding-standards.yml b/.github/workflows/coding-standards.yml index 8c69385..6aed6ac 100644 --- a/.github/workflows/coding-standards.yml +++ b/.github/workflows/coding-standards.yml @@ -10,7 +10,7 @@ jobs: strategy: matrix: php-version: - - "7.4" + - "8.2" steps: - name: "Checkout" diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index f827328..d8c0727 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -16,9 +16,6 @@ jobs: strategy: matrix: php-version: - - "7.4" - - "8.0" - - "8.1" - "8.2" deps: - "normal" @@ -27,113 +24,53 @@ jobs: symfony-deprecations-helper: - "" include: - # Test against latest Symfony 5.4 stable on 7.4 - - symfony-require: "5.4.*" - php-version: "7.4" - deps: "dev" - - # Test against latest Symfony 5.4 stable on 7.4 deps normal - - symfony-require: "5.4.*" - php-version: "7.4" - deps: "normal" - - # Test against latest Symfony 5.4 stable on 8.0 - - symfony-require: "5.4.*" - php-version: "8.0" - deps: "dev" - - # Test against latest Symfony 5.4 stable on 8.0 deps normal - - symfony-require: "5.4.*" - php-version: "8.0" - deps: "normal" - - # Test against latest Symfony 5.4 stable on 8.1 - - symfony-require: "5.4.*" - php-version: "8.1" - deps: "dev" - - # Test against latest Symfony 5.4 stable on 8.1 deps normal - - symfony-require: "5.4.*" - php-version: "8.1" - deps: "normal" - - # Test against latest Symfony 5.4 stable on 8.2 - - symfony-require: "5.4.*" - php-version: "8.2" - deps: "dev" - - # Test against latest Symfony 5.4 stable on 8.2 deps normal - - symfony-require: "5.4.*" - php-version: "8.2" - deps: "normal" - - # Test against latest Symfony 6.0 stable on 8.0 - - symfony-require: "6.0.*" - php-version: "8.0" - deps: "dev" - - # Test against latest Symfony 6.0 stable on 8.0 deps normal - - symfony-require: "6.0.*" - php-version: "8.0" - deps: "normal" - - # Test against latest Symfony 6.0 stable on 8.1 - - symfony-require: "6.0.*" - php-version: "8.1" - deps: "dev" - - # Test against latest Symfony 6.0 stable on 8.1 deps normal - - symfony-require: "6.0.*" - php-version: "8.1" - deps: "normal" - # Test against latest Symfony 6.0 stable on 8.2 - - symfony-require: "6.0.*" + - symfony-require: "7.0.*" php-version: "8.2" deps: "dev" # Test against latest Symfony 6.0 stable on 8.2 deps normal - - symfony-require: "6.0.*" + - symfony-require: "7.0.*" php-version: "8.2" deps: "normal" # Test against latest Symfony 6.1 stable on 8.1 - - symfony-require: "6.1.*" + - symfony-require: "7.1.*" php-version: "8.1" deps: "dev" # Test against latest Symfony 6.1 stable on 8.1 deps normal - - symfony-require: "6.1.*" + - symfony-require: "7.1.*" php-version: "8.1" deps: "normal" # Test against latest Symfony 6.1 stable on 8.2 - - symfony-require: "6.1.*" + - symfony-require: "7.1.*" php-version: "8.2" deps: "dev" # Test against latest Symfony 6.1 stable on 8.2 deps normal - - symfony-require: "6.1.*" + - symfony-require: "7.1.*" php-version: "8.2" deps: "normal" # Test against latest Symfony 6.2 stable on 8.1 - - symfony-require: "6.2.*" - php-version: "8.1" + - symfony-require: "7.2.*" + php-version: "8.2" deps: "dev" # Test against latest Symfony 6.2 stable on 8.1 deps normal - - symfony-require: "6.2.*" - php-version: "8.1" + - symfony-require: "7.2.*" + php-version: "8.2" deps: "normal" # Test against latest Symfony 6.2 stable on 8.2 - - symfony-require: "6.2.*" + - symfony-require: "7.2.*" php-version: "8.2" deps: "dev" # Test against latest Symfony 6.2 stable on 8.2 deps normal - - symfony-require: "6.2.*" + - symfony-require: "7.2.*" php-version: "8.2" deps: "normal" steps: diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php index a865751..d52d7b5 100755 --- a/DependencyInjection/Configuration.php +++ b/DependencyInjection/Configuration.php @@ -10,6 +10,7 @@ use Psr\Http\Message\UriFactoryInterface; use Psr\Log\LoggerInterface; use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition; +use Symfony\Component\Config\Definition\Builder\NodeBuilder; use Symfony\Component\Config\Definition\Builder\TreeBuilder; use Symfony\Component\Config\Definition\ConfigurationInterface; use Tmdb\Client; @@ -20,7 +21,6 @@ use Tmdb\Formatter\Hydration\SimpleHydrationFormatter; use Tmdb\Formatter\TmdbApiException\SimpleTmdbApiExceptionFormatter; - class Configuration implements ConfigurationInterface { /** @@ -29,9 +29,13 @@ class Configuration implements ConfigurationInterface public function getConfigTreeBuilder(): TreeBuilder { $treeBuilder = new TreeBuilder('tmdb_symfony'); - /** @var ArrayNodeDefinition $rootNode */ + $rootNode = $treeBuilder->getRootNode(); + if (!$rootNode instanceof ArrayNodeDefinition) { + return $treeBuilder; + } + $this->addRootChildren($rootNode); $this->addOptionsSection($rootNode); $this->addLogSection($rootNode); @@ -45,7 +49,7 @@ private function addRootChildren(ArrayNodeDefinition $rootNode): void $rootNode ->beforeNormalization() ->ifTrue(function ($v) { - return isset($v['api_key']) && !empty($v['api_key']); + return !empty($v['api_key']); }) ->then(function ($v) { $v['options']['api_token'] = $v['api_key']; diff --git a/Tests/DependencyInjection/CompilerPass/ConfigurationPassTest.php b/Tests/DependencyInjection/CompilerPass/ConfigurationPassTest.php index 207d00a..1f0185e 100644 --- a/Tests/DependencyInjection/CompilerPass/ConfigurationPassTest.php +++ b/Tests/DependencyInjection/CompilerPass/ConfigurationPassTest.php @@ -15,14 +15,15 @@ use Tmdb\SymfonyBundle\TmdbSymfonyBundle; use Tmdb\Token\Api\ApiToken; use Tmdb\Token\Api\BearerToken; +use PHPUnit\Framework\Attributes as PHPUnit; final class ConfigurationPassTest extends TestCase { - /** - * @test - * @group DependencyInjection - */ - public function testProcessFullConfiguration() + private const DEPENDENCY_INJECTION_GROUP = 'DependencyInjection'; + + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testProcessFullConfiguration(): void { $container = $this->createFullConfiguration(); $this->registerBasicServices($container); @@ -33,11 +34,9 @@ public function testProcessFullConfiguration() $this->doBasicAssertionsBasedOnFullOrMinimalConfig($container); } - /** - * @test - * @group DependencyInjection - */ - public function testProcessMinimalConfiguration() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testProcessMinimalConfiguration(): void { $container = $this->createMinimalConfiguration(); $this->registerBasicServices($container); @@ -48,11 +47,9 @@ public function testProcessMinimalConfiguration() $this->doBasicAssertionsBasedOnFullOrMinimalConfig($container); } - /** - * @test - * @group DependencyInjection - */ - public function testAutowiring() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testAutowiring(): void { $container = new ContainerBuilder(); @@ -89,11 +86,9 @@ public function testAutowiring() $this->assertTag($container, get_class($uriFactoryMock), TmdbSymfonyBundle::PSR17_URI_FACTORIES); } - /** - * @test - * @group DependencyInjection - */ - public function testAutowiringFailsWithUndiscoveredServices() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testAutowiringFailsWithUndiscoveredServices(): void { $this->expectException(\RuntimeException::class); $container = new ContainerBuilder(); @@ -106,11 +101,9 @@ public function testAutowiringFailsWithUndiscoveredServices() $pass->process($container); } - /** - * @test - * @group DependencyInjection - */ - public function testAutowiringFailsWithSeveralDiscoveredServices() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testAutowiringFailsWithSeveralDiscoveredServices(): void { $this->expectException(\RuntimeException::class); @@ -131,11 +124,9 @@ public function testAutowiringFailsWithSeveralDiscoveredServices() $pass->process($container); } - /** - * @test - * @group DependencyInjection - */ - public function testProcessBearerToken() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testProcessBearerToken(): void { $config = $this->getFullConfig(); $config['options']['bearer_token'] = 'bearer_token'; @@ -146,7 +137,7 @@ public function testProcessBearerToken() $pass = new ConfigurationPass(); $pass->process($container); - $this->assertEquals( + $this->assertSame( BearerToken::class, $container->getDefinition('Tmdb\SymfonyBundle\ClientConfiguration')->getArgument(0)->__toString() ); @@ -189,7 +180,7 @@ protected function assertClientConfigurationEquals( string $expectedServiceId, int $argument ) { - $this->assertEquals( + $this->assertSame( $expectedServiceId, $container->getDefinition('Tmdb\SymfonyBundle\ClientConfiguration')->getArgument($argument)->__toString() ); diff --git a/Tests/DependencyInjection/CompilerPass/EventDispatchingPassTest.php b/Tests/DependencyInjection/CompilerPass/EventDispatchingPassTest.php index b472e5b..c62a0e5 100644 --- a/Tests/DependencyInjection/CompilerPass/EventDispatchingPassTest.php +++ b/Tests/DependencyInjection/CompilerPass/EventDispatchingPassTest.php @@ -32,14 +32,15 @@ use Tmdb\SymfonyBundle\Tests\DependencyInjection\TestCase; use Tmdb\SymfonyBundle\TmdbSymfonyBundle; use Tmdb\Token\Api\BearerToken; +use PHPUnit\Framework\Attributes as PHPUnit; final class EventDispatchingPassTest extends TestCase { - /** - * @test - * @group DependencyInjection - */ - public function testProcessFullConfiguration() + private const DEPENDENCY_INJECTION_GROUP = 'DependencyInjection'; + + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testProcessFullConfiguration(): void { $container = new ContainerBuilder(); $container->setParameter('kernel.debug', true); @@ -70,11 +71,9 @@ public function testProcessFullConfiguration() ); } - /** - * @test - * @group DependencyInjection - */ - public function testProcessFullConfigurationWithSingleLogItemDisabled() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testProcessFullConfigurationWithSingleLogItemDisabled(): void { $container = $this->containerWithConfig([ 'log' => [ @@ -95,11 +94,9 @@ public function testProcessFullConfigurationWithSingleLogItemDisabled() ); } - /** - * @test - * @group DependencyInjection - */ - public function testProcessMinimalConfiguration() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testProcessMinimalConfiguration(): void { $container = new ContainerBuilder(); $container->setParameter('kernel.debug', true); @@ -125,56 +122,46 @@ public function testProcessMinimalConfiguration() ); } - /** - * @test - * @group DependencyInjection - */ - public function testBearerToken() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testBearerToken(): void { $container = $this->containerWithConfig(['options' => ['bearer_token' => 'foobar']]); $definition = $container->getDefinition(ApiTokenRequestListener::class); - $this->assertEquals(BearerToken::class, $definition->getArgument(0)->__toString()); + $this->assertSame(BearerToken::class, $definition->getArgument(0)->__toString()); } - /** - * @test - * @group DependencyInjection - */ - public function testWithFaultyAdapter() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testWithFaultyAdapter(): void { $this->expectException(\RuntimeException::class); $this->containerWithConfig(['log' => ['request_logging' => ['adapter' => 'foobar']]]); } - /** - * @test - * @group DependencyInjection - */ - public function testWithFaultyFormatter() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testWithFaultyFormatter(): void { $this->expectException(\RuntimeException::class); $this->containerWithConfig(['log' => ['request_logging' => ['formatter' => 'foobar']]]); } - /** - * @test - * @group DependencyInjection - */ - public function testWithFaultyListener() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testWithFaultyListener(): void { $this->expectException(\RuntimeException::class); $this->containerWithConfig(['log' => ['request_logging' => ['listener' => 'foobar']]]); } - /** - * @test - * @group DependencyInjection - */ - public function testWithLogItemAliases() + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] + public function testWithLogItemAliases(): void { $container = new ContainerBuilder(); $container->setParameter('kernel.debug', true); @@ -209,7 +196,7 @@ public function testWithLogItemAliases() * @param array $faulty * @return ContainerBuilder */ - private function containerWithConfig(array $faulty = []) + private function containerWithConfig(array $faulty = []): ContainerBuilder { $container = new ContainerBuilder(); $container->setParameter('kernel.debug', true); @@ -235,7 +222,7 @@ private function containerWithConfig(array $faulty = []) /** * @param ContainerBuilder $container */ - protected function registerBasicServices(ContainerBuilder $container) + protected function registerBasicServices(ContainerBuilder $container): void { $container->register(EventDispatcher::class, EventDispatcher::class)->addTag( TmdbSymfonyBundle::PSR14_EVENT_DISPATCHERS @@ -279,7 +266,7 @@ protected function registerBasicServices(ContainerBuilder $container) /** * @param ContainerBuilder $container */ - protected function registerListenerServices(ContainerBuilder $container) + protected function registerListenerServices(ContainerBuilder $container): void { $container->register(RequestListener::class, RequestListener::class); $container->register(Psr6CachedRequestListener::class, Psr6CachedRequestListener::class); @@ -306,36 +293,37 @@ protected function doAssertCountListenersRegistered( int $httpClientExceptionEventCount = 0, int $tmdbExceptionEventCount = 0, int $beforeHydrationEventCount = 0 - ) { + ): void + { /** @var Client $client */ $client = $container->get(Client::class); /** @var EventDispatcher $eventDispatcher */ $eventDispatcher = $client->getEventDispatcher(); - $this->assertEquals( + $this->assertCount( $beforeRequestEventCount, - count($eventDispatcher->getListeners(BeforeRequestEvent::class)) + $eventDispatcher->getListeners(BeforeRequestEvent::class) ); - $this->assertEquals( + $this->assertCount( $responseEventCount, - count($eventDispatcher->getListeners(ResponseEvent::class)) + $eventDispatcher->getListeners(ResponseEvent::class) ); - $this->assertEquals( + $this->assertCount( $httpClientExceptionEventCount, - count($eventDispatcher->getListeners(HttpClientExceptionEvent::class)) + $eventDispatcher->getListeners(HttpClientExceptionEvent::class) ); - $this->assertEquals( + $this->assertCount( $tmdbExceptionEventCount, - count($eventDispatcher->getListeners(TmdbExceptionEvent::class)) + $eventDispatcher->getListeners(TmdbExceptionEvent::class) ); - $this->assertEquals( + $this->assertCount( $beforeHydrationEventCount, - count($eventDispatcher->getListeners(BeforeHydrationEvent::class)) + $eventDispatcher->getListeners(BeforeHydrationEvent::class) ); } } diff --git a/Tests/DependencyInjection/TestCase.php b/Tests/DependencyInjection/TestCase.php index 394e001..2dbc5e3 100644 --- a/Tests/DependencyInjection/TestCase.php +++ b/Tests/DependencyInjection/TestCase.php @@ -9,15 +9,14 @@ class TestCase extends BaseTestCase { - /** @var ContainerBuilder */ - protected $container; + protected ?ContainerBuilder $container; /** * @param string $id */ protected function assertHasDefinition($id): void { - $this->assertTrue(($this->container->hasDefinition($id) ?: $this->container->hasAlias($id))); + $this->assertTrue(($this->container->hasDefinition($id) || $this->container->hasAlias($id))); } /** @@ -56,7 +55,7 @@ protected function assertNotAlias($key): void */ protected function assertNotHasDefinition($id): void { - $this->assertFalse(($this->container->hasDefinition($id) ?: $this->container->hasAlias($id))); + $this->assertFalse(($this->container->hasDefinition($id) || $this->container->hasAlias($id))); } protected function tearDown(): void diff --git a/Tests/DependencyInjection/TmdbSymfonyExtensionTest.php b/Tests/DependencyInjection/TmdbSymfonyExtensionTest.php index d731d69..da5b101 100644 --- a/Tests/DependencyInjection/TmdbSymfonyExtensionTest.php +++ b/Tests/DependencyInjection/TmdbSymfonyExtensionTest.php @@ -5,13 +5,14 @@ use Symfony\Component\Config\Definition\Exception\InvalidConfigurationException; use Symfony\Component\DependencyInjection\ContainerBuilder; use Tmdb\SymfonyBundle\DependencyInjection\TmdbSymfonyExtension; +use PHPUnit\Framework\Attributes as PHPUnit; final class TmdbSymfonyExtensionTest extends TestCase { - /** - * @test - * @group DependencyInjection - */ + private const DEPENDENCY_INJECTION_GROUP = 'DependencyInjection'; + + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] public function testDefaultConfigurationWithoutApiKeyThrowsException(): void { $this->expectException(InvalidConfigurationException::class); @@ -20,10 +21,8 @@ public function testDefaultConfigurationWithoutApiKeyThrowsException(): void $loader->load([$config], new ContainerBuilder()); } - /** - * @test - * @group DependencyInjection - */ + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] public function testDefaultConfigurationWithApiKey(): void { $this->container = new ContainerBuilder(); @@ -36,10 +35,8 @@ public function testDefaultConfigurationWithApiKey(): void $this->assertHasDefinition('Tmdb\SymfonyBundle\Twig\TmdbExtension'); } - /** - * @test - * @group DependencyInjection - */ + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] public function testDefaultConfigurationHasLegacyAliases(): void { $this->container = new ContainerBuilder(); @@ -52,10 +49,8 @@ public function testDefaultConfigurationHasLegacyAliases(): void $this->assertAlias($this->container, 'Tmdb\SymfonyBundle\Twig\TmdbExtension', 'tmdb.twig.image_extension'); } - /** - * @test - * @group DependencyInjection - */ + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] public function testDisablingRepositories(): void { $this->container = new ContainerBuilder(); @@ -69,10 +64,8 @@ public function testDisablingRepositories(): void $this->assertNotHasDefinition('Tmdb\Repository\MovieRepository'); } - /** - * @test - * @group DependencyInjection - */ + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] public function testDisablingTwig(): void { $this->container = new ContainerBuilder(); @@ -86,10 +79,8 @@ public function testDisablingTwig(): void $this->assertNotHasDefinition('Tmdb\SymfonyBundle\Twig\TmdbExtension'); } - /** - * @test - * @group DependencyInjection - */ + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] public function testDisablingLegacyAliasesRemovesLegacyAliases(): void { $this->container = new ContainerBuilder(); @@ -103,10 +94,8 @@ public function testDisablingLegacyAliasesRemovesLegacyAliases(): void $this->assertNotAlias('tmdb.twig.image_extension'); } - /** - * @test - * @group DependencyInjection - */ + #[PHPUnit\Group(self::DEPENDENCY_INJECTION_GROUP)] + #[PHPUnit\Test] public function testLegacyMappingMapsCorrectly(): void { $this->container = new ContainerBuilder(); diff --git a/Tests/Twig/TmdbExtensionTest.php b/Tests/Twig/TmdbExtensionTest.php index 8001f12..c8725aa 100644 --- a/Tests/Twig/TmdbExtensionTest.php +++ b/Tests/Twig/TmdbExtensionTest.php @@ -8,13 +8,12 @@ use Tmdb\Model\Image; use Tmdb\Repository\ConfigurationRepository; use Tmdb\SymfonyBundle\Twig\TmdbExtension; +use PHPUnit\Framework\Attributes as PHPUnit; class TmdbExtensionTest extends TestCase { - /** - * @group Twig - */ - public function testTwigExtension() + #[PHPUnit\Group('Twig')] + public function testTwigExtension(): void { $client = $this->createMock(Client::class); $responseData = json_decode( @@ -38,19 +37,17 @@ public function testTwigExtension() ->setVoteAverage(4.7) ->setVoteCount(666); - $this->assertEquals('//image.tmdb.org/t/p/original/foo.jpg', $extension->getUrl($image)); - $this->assertEquals( + $this->assertSame('//image.tmdb.org/t/p/original/foo.jpg', $extension->getUrl($image)); + $this->assertSame( '', $extension->getHtml($image) ); - $this->assertEquals('tmdb_extension', $extension->getName()); + $this->assertSame('tmdb_extension', $extension->getName()); $this->assertCount(2, $extension->getFilters()); } - /** - * @group Twig - */ - public function testRepository() + #[PHPUnit\Group('Twig')] + public function testRepository(): void { $client = $this->createMock(Client::class); $responseData = json_decode( @@ -82,12 +79,12 @@ public function testRepository() ->setVoteAverage(4.7) ->setVoteCount(666); - $this->assertEquals('//image.tmdb.org/t/p/original/foo.jpg', $extension->getUrl($image)); - $this->assertEquals( + $this->assertSame('//image.tmdb.org/t/p/original/foo.jpg', $extension->getUrl($image)); + $this->assertSame( '', $extension->getHtml($image) ); - $this->assertEquals('tmdb_extension', $extension->getName()); + $this->assertSame('tmdb_extension', $extension->getName()); $this->assertCount(2, $extension->getFilters()); } } diff --git a/TmdbSymfonyBundle.php b/TmdbSymfonyBundle.php index 6bd9d5e..6acc374 100644 --- a/TmdbSymfonyBundle.php +++ b/TmdbSymfonyBundle.php @@ -9,6 +9,7 @@ use Psr\Http\Message\StreamFactoryInterface; use Psr\Http\Message\UriFactoryInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; +use Symfony\Component\HttpKernel\Bundle\AbstractBundle; use Symfony\Component\HttpKernel\Bundle\Bundle; use Tmdb\SymfonyBundle\DependencyInjection\CompilerPass\ConfigurationPass; use Tmdb\SymfonyBundle\DependencyInjection\CompilerPass\EventDispatchingPass; @@ -18,7 +19,7 @@ * @package Tmdb\SymfonyBundle * @codeCoverageIgnore */ -class TmdbSymfonyBundle extends Bundle +class TmdbSymfonyBundle extends AbstractBundle { public const VERSION = '4.0.0'; public const PSR18_CLIENTS = 'tmdb_symfony.psr18.clients'; diff --git a/composer.json b/composer.json index 0ee83bb..361932c 100755 --- a/composer.json +++ b/composer.json @@ -13,13 +13,13 @@ } ], "require": { - "php": "^7.4 || ^8.0", - "php-tmdb/api": "^4.0", - "symfony/config": "^5.4 || ^6.0", - "symfony/dependency-injection": "^5.4 || ^6.0", - "symfony/event-dispatcher": "^5.4 || ^6.0", - "symfony/http-kernel": "^5.4 || ^6.0", - "symfony/yaml": "^5.4 || ^6.0", + "php": "^8.2", + "php-tmdb/api": "^4.1", + "symfony/config": "^7.0", + "symfony/dependency-injection": "^7.0", + "symfony/event-dispatcher": "^7.0", + "symfony/http-kernel": "^7.0", + "symfony/yaml": "^7.0", "twig/twig": "^3.0" }, "scripts": { @@ -36,11 +36,11 @@ "squizlabs/php_codesniffer": "^3.5.8", "php-http/guzzle7-adapter": "^0.1", "phpstan/phpstan": "^1.0", - "phpunit/phpunit": "^7.5 || ^8.0 || ^9.3", - "symfony/framework-bundle": "^5.4 || ^6.0", - "symfony/phpunit-bridge": "^5.4 || ^6.0", - "vimeo/psalm": "^4.0", - "php-http/cache-plugin": "^1.7" + "phpunit/phpunit": "^11.0", + "symfony/framework-bundle": "^7.0", + "symfony/phpunit-bridge": "^7.0", + "php-http/cache-plugin": "^1.7", + "vimeo/psalm": "^6.0" }, "autoload": { "psr-4": { "Tmdb\\SymfonyBundle\\": "" } diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 5d6685c..f743389 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -1,5 +1,5 @@ - + ./