Loading api/src/Pegase/Configuration.php +3 −1 Changes for api/src/Pegase/Configuration.php: 3 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -60,7 +60,9 @@ final class Configuration */ public static function liste(string $valeur): array { return array_values(array_filter(array_map('trim', explode(',', $valeur)))); $valeurs = array_map('trim', explode(',', $valeur)); return array_values(array_filter($valeurs, static fn (string $v): bool => '' !== $v)); } /** Loading api/tests/Pegase/ConfigurationTest.php +14 −0 Changes for api/tests/Pegase/ConfigurationTest.php: 14 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -32,6 +32,11 @@ class ConfigurationTest extends TestCase { $this->assertSame(['PEGASE_ANNEES_UNIVERSITAIRES'], (new Configuration('', '', '09-01:01-31', '01-15:06-30'))->erreurs()); $erreurs = (new Configuration('0', '0', '09-01:01-31', '01-15:06-30'))->erreurs(); $this->assertCount(2, $erreurs); $this->assertStringStartsWith('PEGASE_ANNEES_UNIVERSITAIRES : « 0 »', $erreurs[0]); $this->assertStringStartsWith('PEGASE_LANGUES : « 0 »', $erreurs[1]); $erreurs = (new Configuration('2026-2028,2026', 'ECA', '09-01', '02-30:06-30'))->erreurs(); $this->assertCount(5, $erreurs); Loading @@ -40,6 +45,15 @@ class ConfigurationTest extends TestCase $this->assertStringStartsWith('PEGASE_SEMESTRE_2 : « 02-30:06-30 »', $erreurs[4]); } /** * Vérifie le découpage d'une valeur en liste : espaces et valeurs vides retirés, « 0 » conservé. */ public function testListe(): void { $this->assertSame(['A1', '0', 'B2'], Configuration::liste(' A1, ,0,,B2 ,')); $this->assertSame([], Configuration::liste('')); } /** * Vérifie les dates d'instance : semestre 1 commençant la première année, dates suivantes à leur prochaine occurrence. */ Loading Loading
api/src/Pegase/Configuration.php +3 −1 Changes for api/src/Pegase/Configuration.php: 3 added lines, 1 removed line. Original line number Diff line number Diff line Loading @@ -60,7 +60,9 @@ final class Configuration */ public static function liste(string $valeur): array { return array_values(array_filter(array_map('trim', explode(',', $valeur)))); $valeurs = array_map('trim', explode(',', $valeur)); return array_values(array_filter($valeurs, static fn (string $v): bool => '' !== $v)); } /** Loading
api/tests/Pegase/ConfigurationTest.php +14 −0 Changes for api/tests/Pegase/ConfigurationTest.php: 14 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -32,6 +32,11 @@ class ConfigurationTest extends TestCase { $this->assertSame(['PEGASE_ANNEES_UNIVERSITAIRES'], (new Configuration('', '', '09-01:01-31', '01-15:06-30'))->erreurs()); $erreurs = (new Configuration('0', '0', '09-01:01-31', '01-15:06-30'))->erreurs(); $this->assertCount(2, $erreurs); $this->assertStringStartsWith('PEGASE_ANNEES_UNIVERSITAIRES : « 0 »', $erreurs[0]); $this->assertStringStartsWith('PEGASE_LANGUES : « 0 »', $erreurs[1]); $erreurs = (new Configuration('2026-2028,2026', 'ECA', '09-01', '02-30:06-30'))->erreurs(); $this->assertCount(5, $erreurs); Loading @@ -40,6 +45,15 @@ class ConfigurationTest extends TestCase $this->assertStringStartsWith('PEGASE_SEMESTRE_2 : « 02-30:06-30 »', $erreurs[4]); } /** * Vérifie le découpage d'une valeur en liste : espaces et valeurs vides retirés, « 0 » conservé. */ public function testListe(): void { $this->assertSame(['A1', '0', 'B2'], Configuration::liste(' A1, ,0,,B2 ,')); $this->assertSame([], Configuration::liste('')); } /** * Vérifie les dates d'instance : semestre 1 commençant la première année, dates suivantes à leur prochaine occurrence. */ Loading