ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
ilTestTabsManagerTest.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
23 
29 {
31 
32  private $tabs_mock;
33 
34  protected function setUp(): void
35  {
36  parent::setUp();
37 
38  $this->tabs_mock = $this->createMock(ilTabsGUI::class);
39  $this->setGlobalVariable("ilTabs", $this->tabs_mock);
40  $this->addGlobal_ilAccess();
41  $this->addGlobal_ilCtrl();
42  $this->addGlobal_lng();
43 
44  $this->testObj = new ilTestTabsManager(
45  $this->tabs_mock,
46  $this->createMock(ilLanguage::class),
47  $this->createMock(ilCtrl::class),
48  $this->createMock(RequestWrapper::class),
49  $this->createMock(Refinery::class),
50  $this->createMock(ilAccess::class),
51  $this->createMock(ilTestAccess::class),
52  $this->createMock(ilTestObjectiveOrientedContainer::class)
53  );
54  }
55 
57  {
58  $this->assertInstanceOf(ilTestTabsManager::class, $this->testObj);
59  }
60 
61  public function testActivateTab(): void
62  {
63  $this->tabs_mock->expects($this->exactly(2))->method("activateTab");
64  $this->testObj->activateTab(ilTestTabsManager::TAB_ID_EXAM_DASHBOARD);
65  $this->testObj->activateTab(ilTestTabsManager::TAB_ID_RESULTS);
66  $this->testObj->activateTab("randomString");
67  }
68 
69  public function testActivateSubTab(): void
70  {
71  $this->tabs_mock->expects($this->exactly(10))->method("activateSubTab");
72 
73  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_FIXED_PARTICIPANTS);
74  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_TIME_EXTENSION);
75  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_PARTICIPANTS_RESULTS);
76  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_MY_RESULTS);
77  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_LO_RESULTS);
78  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_HIGHSCORE);
79  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_SKILL_RESULTS);
80  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_MY_SOLUTIONS);
81  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_QST_LIST_VIEW);
82  $this->testObj->activateSubTab(ilTestTabsManager::SUBTAB_ID_QST_PAGE_VIEW);
83  $this->testObj->activateSubTab(ilTestTabsManager::TAB_ID_EXAM_DASHBOARD);
84  $this->testObj->activateSubTab("randomString");
85  }
86 
87  public function testTestOBJ(): void
88  {
89  $mock = $this->createMock(ilObjTest::class);
90  $this->testObj->setTestOBJ($mock);
91  $this->assertEquals($mock, $this->testObj->getTestOBJ());
92  }
93 
94  public function testTestSession(): void
95  {
96  $mock = $this->createMock(ilTestSession::class);
97  $this->testObj->setTestSession($mock);
98  $this->assertEquals($mock, $this->testObj->getTestSession());
99  }
100 
101  public function testTestQuestionSetConfig(): void
102  {
103  $mock = $this->createMock(ilTestQuestionSetConfig::class);
104  $this->testObj->setTestQuestionSetConfig($mock);
105  $this->assertEquals($mock, $this->testObj->getTestQuestionSetConfig());
106  }
107 
108  public function testParentBackLabel(): void
109  {
110  $this->testObj->setParentBackLabel("Test");
111  $this->assertEquals("Test", $this->testObj->getParentBackLabel());
112  }
113 
114  public function testParentBackHref(): void
115  {
116  $this->testObj->setParentBackHref("Test");
117  $this->assertEquals("Test", $this->testObj->getParentBackHref());
118  }
119 
120  public function testHasParentBackLink(): void
121  {
122  $this->assertFalse($this->testObj->hasParentBackLink());
123 
124  $this->testObj->setParentBackHref("Test");
125  $this->assertFalse($this->testObj->hasParentBackLink());
126 
127  $this->testObj->setParentBackLabel("Test");
128  $this->assertTrue($this->testObj->hasParentBackLink());
129  }
130 }
Class ilTestTabsManagerTest.
setGlobalVariable(string $name, $value)
Class ilTestBaseClass.