diff --git a/VERSIONS_WIP/164318 b/VERSIONS_WIP/164318 new file mode 100644 index 0000000000000000000000000000000000000000..ef5d69df8e7fe7e081d6879d0985c272091866b4 --- /dev/null +++ b/VERSIONS_WIP/164318 @@ -0,0 +1 @@ + - fonctionnalité #164318 : Thème MyBibApp : le thème MyBibApp embarque maintenant une page agenda. Celle-ci est accessible à l'adresse agenda_mybibapp. Elle contient une boite agenda dans la division principal et partage l'entete et le pied de page avec le profil MyBibApp. \ No newline at end of file diff --git a/library/templates/MyBibApp/Library/ProfilePatcher.php b/library/templates/MyBibApp/Library/ProfilePatcher.php index d6524b1052a9690d76a3bd5e5c17acbac398948a..29e360f9a15d56b097428f11484397e0e89e794e 100644 --- a/library/templates/MyBibApp/Library/ProfilePatcher.php +++ b/library/templates/MyBibApp/Library/ProfilePatcher.php @@ -35,6 +35,19 @@ class MyBibApp_Library_ProfilePatcher extends Intonation_Library_ProfilePatcher 'simple')), ['boite' => ['px-3']]); + return $this->_addAgendaPage(); + } + + + protected function _addAgendaPage() { + $this->_agenda_page = $this + ->_createPage($this->_('Agenda')) + ->setRewriteUrl($this->_('agenda_mybibapp')) + ->addWidget(Intonation_Library_Widget_Carousel_Agenda_Definition::CODE, + Class_Profil::DIV_MAIN, + array_merge(['titre' => $this->_('Agenda'), + 'boite' => ['mba_widget', 'no_border', 'no_border_radius', 'no_shadow']])); + return $this; } diff --git a/tests/scenarios/Templates/MyBibAppTemplateTest.php b/tests/scenarios/Templates/MyBibAppTemplateTest.php index 4cc5aab9f5435c7d9d552cb12b6fd2d632b14524..8ef2f35312248eff282e3c294e88279b927830b6 100644 --- a/tests/scenarios/Templates/MyBibAppTemplateTest.php +++ b/tests/scenarios/Templates/MyBibAppTemplateTest.php @@ -21,7 +21,7 @@ abstract class MyBibAppTemplateTestCase extends AbstractControllerTestCase { - protected $_storm_default_to_volatile = true; + public function setUp() { parent::setUp(); @@ -100,8 +100,8 @@ class MyBibAppTemplateProfilePatcherTest extends MyBibAppTemplateTestCase { + class MyBibAppTemplateOpacIndexWithUserAgentAndTemplateDisabledTest extends AbstractControllerTestCase { - protected $_storm_default_to_volatile = true; public function setUp() { @@ -141,6 +141,7 @@ class MyBibAppTemplateOpacIndexWithUserAgentAndTemplateDisabledTest extends Abst class MyBibAppTemplateOpacIndexWithUserAgentTest extends MyBibAppTemplateTestCase { + public function setUp() { parent::setUp(); @@ -188,8 +189,8 @@ class MyBibAppTemplateOpacIndexWithUserAgentTest extends MyBibAppTemplateTestCas + class MyBibAppTemplateEditTemplateTest extends Admin_AbstractControllerTestCase { - protected $_storm_default_to_volatile = true; public function setUp() { parent::setUp(); @@ -218,6 +219,7 @@ class MyBibAppTemplateEditTemplateTest extends Admin_AbstractControllerTestCase + class MyBibAppTemplateOauthWithUserAgentTest extends MyBibAppTemplateTestCase { public function setUp() { @@ -263,8 +265,8 @@ class MyBibAppTemplateOauthWithUserAgentTest extends MyBibAppTemplateTestCase { + class MyBibAppTemplatePostDispatchOauthWithUserAgentTest extends MyBibAppTemplateTestCase { - protected $_storm_default_to_volatile = true; protected $_auth; @@ -440,7 +442,6 @@ class MyBibAppTemplateReadedInSerieTest extends MyBibAppTemplateTestCase { class MyBibAppTemplateWithNoAdminToolsWidgetTest extends Admin_AbstractControllerTestCase { - protected $_storm_default_to_volatile = true; public function setUp() { @@ -457,3 +458,30 @@ class MyBibAppTemplateWithNoAdminToolsWidgetTest extends Admin_AbstractControlle $this->assertXPathContentContains('//script', 'window.activateOpacBlocksSorting = window.deactiveOpacBlocksSorting = function() {};'); } } + + + + +class MyBibAppTemplatePageAgendaTest extends AbstractControllerTestCase { + public function setUp() { + parent::setUp(); + + $profile = $this->fixture(Class_Profil::class, ['id' => 23]); + (new MyBibApp_Template)->tryOn($profile); + } + + + /** @test */ + public function pageAgendaShouldHaveBeenCreated() { + $this->assertNotNull(Class_Profil::findFirstBy(['id' => 25, + 'rewrite_url' => 'agenda_mybibapp', + 'parent_id' => 24])); + } + + + /** @test */ + public function pageAgendaShouldContainsAgendaWidget() { + $this->dispatch('/agenda_mybibapp'); + $this->assertXPathContentContains('//main//div[@class="boite calendar mba_widget no_border no_border_radius no_shadow widget col-12 card"]', 'Agenda'); + } +} \ No newline at end of file