diff --git a/VERSIONS_WIP/179153 b/VERSIONS_WIP/179153 new file mode 100644 index 0000000000000000000000000000000000000000..3d8d28c7685b892e7ab407c9444dc9a2ab7cc10e --- /dev/null +++ b/VERSIONS_WIP/179153 @@ -0,0 +1 @@ + - fonctionnalité #179153 : Ressource Numérique Cafeyn : Ajout du libellé de la bibliothèque dans la réponse CAS V3 \ No newline at end of file diff --git a/library/Class/IdentityProvider/Cas3.php b/library/Class/IdentityProvider/Cas3.php index 95323a1b98ab2e67f43da81adccdf1915a67be36..1a6d1f9013f1d51127b9b45249ee3213d06cd2d4 100644 --- a/library/Class/IdentityProvider/Cas3.php +++ b/library/Class/IdentityProvider/Cas3.php @@ -37,6 +37,7 @@ class Class_IdentityProvider_Cas3 extends Class_IdentityProvider_Default { 'idabon' => 'card_number', 'id_sigb' => 'ils_number', 'id_site' => 'site_code', + 'libelle_bib' => 'site_label', 'naissance' => 'birth_date', 'code_postal' => 'postal_code', 'civilite' => 'civilite', diff --git a/tests/application/modules/opac/controllers/CasServerControllerV3Test.php b/tests/application/modules/opac/controllers/CasServerControllerV3Test.php index 1ba77ba38b8b591c05c01544555e760210c51d9e..7f1492f2a65e2796ecc606e27b57ac1207d187eb 100644 --- a/tests/application/modules/opac/controllers/CasServerControllerV3Test.php +++ b/tests/application/modules/opac/controllers/CasServerControllerV3Test.php @@ -32,9 +32,20 @@ class CasServerControllerV3ValidateActionTest extends AbstractControllerTestCase $user->ID_USER=300; $time_source = new TimeSourceForTest('2020-08-01 14:00:00'); Class_CasTicketV3::setTimeSource($time_source); + $this->fixture(Class_Bib::class, + ['id' => 3, + 'libelle' => 'Bonlieu']); + + $this->fixture(Class_CodifAnnexe::class, + ['id' => 4, + 'id_origine' => 'A3', + 'libelle' => 'Annecy Bonlieu', + 'id_bib' => 3]); + $user = Class_Users::newInstanceWithId(300, ['login' => '87364', 'password' => 'test', + 'id_site' => '3', 'pseudo' => 'georges']); $cas = (new Class_CasTicketV3('http://test.com')); @@ -107,6 +118,16 @@ class CasServerControllerV3ValidateActionTest extends AbstractControllerTestCase } + /** @test */ + public function requestWithValidTicketPrefixedBySTShouldRespondSiteCodeAndSiteLabelXML() { + $this->dispatch(sprintf('/opac/cas-server-v3/validate?ticket=%s&service=%s', + $this->_ticket_v3, + urlencode('http://test.com'))); + $this->assertContains('<cas:site_code>3</cas:site_code>', $this->_response->getBody()); + $this->assertContains('<cas:site_label>Bonlieu</cas:site_label>', $this->_response->getBody()); + } + + /** @test */ public function whenLogginCasTicketShouldBeCasV3() { $this->postDispatch('/opac/auth/login/redirect/%F',