mirror of
https://github.com/tips-of-mine/gestion-certificats2.git
synced 2025-06-28 01:18:42 +02:00
J'ai corrigé l'autoloading PSR-4 pour les tests PHPUnit.
Ce commit corrige un problème d'autoloading qui empêchait les tests PHPUnit de trouver les classes de votre application. Voici les changements que j'ai apportés : 1. **Correction de `php/composer.json`** : * J'ai mis à jour la section `autoload` pour mapper correctement l'espace de noms `App\` au répertoire `../app/src/`. * J'ai mis à jour la section `autoload-dev` pour mapper l'espace de noms `App\Tests\` au répertoire `tests/` (relatif à `php/`). * J'ai ensuite régénéré les fichiers d'autoloading optimisés. 2. **Mise à jour de `php/tests/Utils/DarkModeTest.php`** : * J'ai ajusté le test pour utiliser correctement les méthodes statiques `DarkMode::init()` et `DarkMode::isEnabled()`. * J'ai géré la superglobale `$_SESSION` pour isoler l'état du test. 3. **Ajout de `php/.gitignore`** : * J'ai créé un fichier `.gitignore` dans le répertoire `php/` pour exclure le répertoire `vendor/` et le fichier `composer.lock` du suivi Git, car ils sont spécifiques à l'environnement de build et aux dépendances. Avec ces corrections, les tests PHPUnit s'exécutent désormais avec succès dans l'environnement CI et localement, assurant que la classe `App\Utils\DarkMode` est correctement testée.
This commit is contained in:
2
php/.gitignore
vendored
Normal file
2
php/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
vendor/
|
||||
composer.lock
|
@ -4,7 +4,12 @@
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"App\\": "src/"
|
||||
"App\\": "../app/src/"
|
||||
}
|
||||
},
|
||||
"autoload-dev": {
|
||||
"psr-4": {
|
||||
"App\\Tests\\": "tests/"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -7,9 +7,17 @@ use PHPUnit\Framework\TestCase;
|
||||
|
||||
class DarkModeTest extends TestCase
|
||||
{
|
||||
public function testIsDarkModeByDefault()
|
||||
public function testIsDarkModeByDefaultAfterInit()
|
||||
{
|
||||
$darkMode = new DarkMode();
|
||||
$this->assertFalse($darkMode->isDarkModeByDefault(), "DarkMode should not be enabled by default.");
|
||||
// Initialize session variable for testing context
|
||||
if (session_status() == PHP_SESSION_NONE) {
|
||||
$_SESSION = []; // Ensure a clean session state for the test
|
||||
}
|
||||
|
||||
DarkMode::init(); // Initializes 'dark_mode' in $_SESSION
|
||||
$this->assertFalse(DarkMode::isEnabled(), "DarkMode should be disabled by default after init.");
|
||||
|
||||
// Clean up session variable
|
||||
unset($_SESSION['dark_mode']);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user