From 16425e9934b8c5f2471f1e8cc1b6e5afdb10a9c2 Mon Sep 17 00:00:00 2001 From: Henri-Damien LAURENT <hdlaurent@afi-sa.net> Date: Mon, 28 Aug 2023 16:02:16 +0000 Subject: [PATCH] hotline#179317 : CAS C3RB: error in date importation --- library/Class/WebService/C3rb.php | 6 +++--- library/Class/WebService/Cas3.php | 3 ++- .../IdentityProviderAuthenticationC3rbTest.php | 8 ++++---- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/library/Class/WebService/C3rb.php b/library/Class/WebService/C3rb.php index f6294a8d92c..d492e8cfe0e 100644 --- a/library/Class/WebService/C3rb.php +++ b/library/Class/WebService/C3rb.php @@ -42,10 +42,10 @@ class Class_WebService_C3rb extends Class_WebService_Cas2 { protected function _validateValue(?string $value, string $function_name) { - return ((($function_name == 'naissance') - || ($function_name=='date_fin')) + return ((('naissance' === $function_name) + || ('date_fin' === $function_name)) && $value) - ? date('Y-m-d', strtotime($value)) + ? Class_TimeSource::tryFormatDate($value) : $value; } } diff --git a/library/Class/WebService/Cas3.php b/library/Class/WebService/Cas3.php index 00e66370067..0d543949afc 100644 --- a/library/Class/WebService/Cas3.php +++ b/library/Class/WebService/Cas3.php @@ -65,7 +65,8 @@ class Class_WebService_Cas3 extends Class_WebService_Cas2 { if (!$value) return ''; - if (!(($function_name == 'naissance') ||($function_name == 'date_fin')) ) + if (!(('naissance' === $function_name) + ||('date_fin' === $function_name)) ) return $value; if (strlen($value) <= 4) diff --git a/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php b/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php index f2ccb32258a..1cfee70570d 100644 --- a/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php +++ b/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php @@ -212,7 +212,7 @@ class IdentityProviderAuthenticationC3rbToBokehUpdateTestCase <cas:attributes> <cas:user>myawesomeuser</cas:user> <cas:mail>awesome@user.fr</cas:mail> - <cas:birth></cas:birth> + <cas:birth>1973-01-23</cas:birth> <cas:nom>Awesome</cas:nom> <cas:prenom>MyEdited</cas:prenom> <cas:date_renouv>01/01/2024</cas:date_renouv> @@ -259,13 +259,13 @@ class IdentityProviderAuthenticationC3rbToBokehUpdateTestCase /** @test */ - public function userBirthShouldBeEmpty() { - $this->assertEquals('', Class_Users::getIdentity()->getNaissance()); + public function userBirthShouldBe19730123() { + $this->assertEquals('1973-01-23', Class_Users::getIdentity()->getNaissance()); } /** @test */ - public function userDateFinShouldExpectation() { + public function userDateFinShouldBe20240101() { $this->assertEquals('2024-01-01', Class_Users::getIdentity()->getDateFin()); } } -- GitLab