mirror of
https://github.com/tips-of-mine/gestion-certificats2.git
synced 2025-06-28 01:18:42 +02:00
![google-labs-jules[bot]](/assets/img/avatar_default.png)
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.
24 lines
642 B
PHP
24 lines
642 B
PHP
<?php
|
|
|
|
namespace App\Tests\Utils;
|
|
|
|
use App\Utils\DarkMode;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class DarkModeTest extends TestCase
|
|
{
|
|
public function testIsDarkModeByDefaultAfterInit()
|
|
{
|
|
// 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']);
|
|
}
|
|
}
|