diff --git a/VERSIONS_HOTLINE/179137 b/VERSIONS_HOTLINE/179137 new file mode 100644 index 0000000000000000000000000000000000000000..f33bcb5f4cedab66043f2d8fd0eba870c256a688 --- /dev/null +++ b/VERSIONS_HOTLINE/179137 @@ -0,0 +1 @@ + - correctif #179137 : Connecteur C3RB : modification des attributs \ No newline at end of file diff --git a/library/Class/IdentityProvider/C3rb.php b/library/Class/IdentityProvider/C3rb.php index c2818eb433eb4b9482519296d45c895c6a1b7bac..d1581c426b40c747e8cd7c168bfbb0a6aeec6768 100644 --- a/library/Class/IdentityProvider/C3rb.php +++ b/library/Class/IdentityProvider/C3rb.php @@ -31,10 +31,9 @@ class Class_IdentityProvider_C3rb extends Class_IdentityProvider_Default { public static function getMapping() : array { - return ['nom' => 'nom', - 'prenom' => 'prenom', - 'mail'=> 'mail', + return ['mail'=> 'mail', 'naissance' => 'birth', - 'idabon' => 'cb']; + 'idabon' => 'cb', + 'date_fin' => 'date_renouv']; } } diff --git a/library/Class/WebService/C3rb.php b/library/Class/WebService/C3rb.php index 81666758d211cf059be0eb6cbf9871fa03aa55a8..f6294a8d92cf666b800f2235421b1fe2e349cf47 100644 --- a/library/Class/WebService/C3rb.php +++ b/library/Class/WebService/C3rb.php @@ -42,7 +42,9 @@ class Class_WebService_C3rb extends Class_WebService_Cas2 { protected function _validateValue(?string $value, string $function_name) { - return (($function_name == 'naissance') && $value) + return ((($function_name == 'naissance') + || ($function_name=='date_fin')) + && $value) ? date('Y-m-d', strtotime($value)) : $value; } diff --git a/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php b/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php index 98ac86de10123873de8fa011d882827df8409546..f2ccb32258a3e027c62908687a30d198fb5978ce 100644 --- a/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php +++ b/tests/scenarios/IdentityProvider/IdentityProviderAuthenticationC3rbTest.php @@ -109,9 +109,10 @@ class IdentityProviderAuthenticationC3rbToBokehTestCase <cas:attributes> <cas:user>myawesomeuser</cas:user> <cas:mail>awesome@user.fr</cas:mail> + <cas:nom>My</cas:nom> + <cas:prenom>Awesome</cas:prenom> <cas:birth>01/01/2001</cas:birth> - <cas:nom>Awesome</cas:nom> - <cas:prenom>My</cas:prenom> + <cas:date_renouv>01/01/2024</cas:date_renouv> <cas:cb>T1</cas:cb> </cas:attributes> </cas:authenticationSuccess> @@ -144,14 +145,14 @@ class IdentityProviderAuthenticationC3rbToBokehTestCase /** @test */ - public function userNameShouldBeAwesome() { - $this->assertEquals('Awesome', Class_Users::getIdentity()->getNom()); + public function userNameShouldBeEmpty() { + $this->assertEmpty(Class_Users::getIdentity()->getNom()); } /** @test */ - public function userFirstnameShouldBeMy() { - $this->assertEquals('My', Class_Users::getIdentity()->getPrenom()); + public function userFirstnameShouldBeEmpty() { + $this->assertEmpty(Class_Users::getIdentity()->getPrenom()); } @@ -161,6 +162,12 @@ class IdentityProviderAuthenticationC3rbToBokehTestCase } + /** @test */ + public function userDateFinShouldBe() { + $this->assertEquals('2024-01-01', Class_Users::getIdentity()->getDateFin()); + } + + /** @test */ public function userBirthShouldBe20010101() { $this->assertEquals('2001-01-01', Class_Users::getIdentity()->getNaissance()); @@ -208,6 +215,7 @@ class IdentityProviderAuthenticationC3rbToBokehUpdateTestCase <cas:birth></cas:birth> <cas:nom>Awesome</cas:nom> <cas:prenom>MyEdited</cas:prenom> + <cas:date_renouv>01/01/2024</cas:date_renouv> <cas:cb>T1</cas:cb> </cas:attributes> </cas:authenticationSuccess> @@ -245,8 +253,8 @@ class IdentityProviderAuthenticationC3rbToBokehUpdateTestCase /** @test */ - public function userFirstnameShouldBeMyEdited() { - $this->assertEquals('MyEdited', Class_Users::getIdentity()->getPrenom()); + public function userFirstnameShouldBeMy() { + $this->assertEquals('My', Class_Users::getIdentity()->getPrenom()); } @@ -255,4 +263,9 @@ class IdentityProviderAuthenticationC3rbToBokehUpdateTestCase $this->assertEquals('', Class_Users::getIdentity()->getNaissance()); } + + /** @test */ + public function userDateFinShouldExpectation() { + $this->assertEquals('2024-01-01', Class_Users::getIdentity()->getDateFin()); + } }