diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index f222511..0255c77 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -12,13 +12,11 @@ jobs:
fail-fast: false
matrix:
php:
- - "7.2"
- - "7.3"
- - "7.4"
- - "8.0"
- "8.1"
- "8.2"
- "8.3"
+ - "8.4"
+ - "8.5"
dependencies:
- "psr/container:^1.1"
- "psr/container:^2.0"
@@ -46,4 +44,4 @@ jobs:
composer update --prefer-dist --no-progress
- name: Run PHPUnit tests
- run: vendor/bin/simple-phpunit --verbose
+ run: vendor/bin/phpunit
diff --git a/composer.json b/composer.json
index ca6a581..7e3923f 100644
--- a/composer.json
+++ b/composer.json
@@ -16,7 +16,7 @@
"psr/container": "^1.1 || ^2.0"
},
"require-dev": {
- "symfony/phpunit-bridge": "^5.4@dev"
+ "phpunit/phpunit": "*"
},
"autoload": {
"psr-0": { "Pimple": "src/" }
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index 8990202..5c8d487 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -11,8 +11,4 @@
./src/Pimple/Tests
-
-
-
-
diff --git a/src/Pimple/Tests/PimpleTest.php b/src/Pimple/Tests/PimpleTest.php
index ffa50a6..40e87f4 100644
--- a/src/Pimple/Tests/PimpleTest.php
+++ b/src/Pimple/Tests/PimpleTest.php
@@ -26,6 +26,7 @@
namespace Pimple\Tests;
+use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\TestCase;
use Pimple\Container;
@@ -150,6 +151,7 @@ public function testUnset()
/**
* @dataProvider serviceDefinitionProvider
*/
+ #[DataProvider('serviceDefinitionProvider')]
public function testShare($service)
{
$pimple = new Container();
@@ -167,6 +169,7 @@ public function testShare($service)
/**
* @dataProvider serviceDefinitionProvider
*/
+ #[DataProvider('serviceDefinitionProvider')]
public function testProtect($service)
{
$pimple = new Container();
@@ -228,6 +231,7 @@ public function testLegacyRawValidatesKeyIsPresent()
/**
* @dataProvider serviceDefinitionProvider
*/
+ #[DataProvider('serviceDefinitionProvider')]
public function testExtend($service)
{
$pimple = new Container();
@@ -332,6 +336,7 @@ public function settingNonInvokableObjectShouldTreatItAsParameter()
/**
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testFactoryFailsForInvalidServiceDefinitions($service)
{
$this->expectException(\Pimple\Exception\ExpectedInvokableException::class);
@@ -345,6 +350,7 @@ public function testFactoryFailsForInvalidServiceDefinitions($service)
* @group legacy
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testLegacyFactoryFailsForInvalidServiceDefinitions($service)
{
$this->expectException(\InvalidArgumentException::class);
@@ -357,6 +363,7 @@ public function testLegacyFactoryFailsForInvalidServiceDefinitions($service)
/**
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testProtectFailsForInvalidServiceDefinitions($service)
{
$this->expectException(\Pimple\Exception\ExpectedInvokableException::class);
@@ -370,6 +377,7 @@ public function testProtectFailsForInvalidServiceDefinitions($service)
* @group legacy
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testLegacyProtectFailsForInvalidServiceDefinitions($service)
{
$this->expectException(\InvalidArgumentException::class);
@@ -382,6 +390,7 @@ public function testLegacyProtectFailsForInvalidServiceDefinitions($service)
/**
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testExtendFailsForKeysNotContainingServiceDefinitions($service)
{
$this->expectException(\Pimple\Exception\InvalidServiceIdentifierException::class);
@@ -397,6 +406,7 @@ public function testExtendFailsForKeysNotContainingServiceDefinitions($service)
* @group legacy
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testLegacyExtendFailsForKeysNotContainingServiceDefinitions($service)
{
$this->expectException(\InvalidArgumentException::class);
@@ -412,7 +422,8 @@ public function testLegacyExtendFailsForKeysNotContainingServiceDefinitions($ser
* @group legacy
* @expectedDeprecation How Pimple behaves when extending protected closures will be fixed in Pimple 4. Are you sure "foo" should be protected?
*/
- public function testExtendingProtectedClosureDeprecation()
+ #[DataProvider('badServiceDefinitionProvider')]
+ public function testExtendingProtectedClosureDeprecation($service)
{
$pimple = new Container();
$pimple['foo'] = $pimple->protect(function () {
@@ -429,6 +440,7 @@ public function testExtendingProtectedClosureDeprecation()
/**
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testExtendFailsForInvalidServiceDefinitions($service)
{
$this->expectException(\Pimple\Exception\ExpectedInvokableException::class);
@@ -444,6 +456,7 @@ public function testExtendFailsForInvalidServiceDefinitions($service)
* @group legacy
* @dataProvider badServiceDefinitionProvider
*/
+ #[DataProvider('badServiceDefinitionProvider')]
public function testLegacyExtendFailsForInvalidServiceDefinitions($service)
{
$this->expectException(\InvalidArgumentException::class);
@@ -488,7 +501,7 @@ public function testExtendFailsIfFrozenServiceIsInvokable()
/**
* Provider for invalid service definitions.
*/
- public function badServiceDefinitionProvider()
+ public static function badServiceDefinitionProvider()
{
return [
[123],
@@ -499,7 +512,7 @@ public function badServiceDefinitionProvider()
/**
* Provider for service definitions.
*/
- public function serviceDefinitionProvider()
+ public static function serviceDefinitionProvider()
{
return [
[function ($value) {