initOutput(\rcmail_action::MODE_HTTP, 'settings', 'preferences'); $this->assertInstanceOf(\rcmail_action::class, $action); $this->assertTrue($action->checks()); $action->run(); $result = $output->getOutput(); $this->assertSame('Preferences', $output->getProperty('pagetitle')); } /** * Test sections_list() method */ public function test_sections_list() { $result = \rcmail_action_settings_index::sections_list([]); $this->assertTrue(strpos($result, 'assertSame('general', $result[0]['general']['id']); } /** * Test get_skins() method */ public function test_get_skins() { $result = \rcmail_action_settings_index::get_skins(); $this->assertContains('elastic', $result); } /** * Test settings_tabs() method */ public function test_settings_tabs() { $result = \rcmail_action_settings_index::settings_tabs([]); $nodes = getHTMLNodes($result, "//span[@id='settingstabpreferences']"); $this->assertCount(1, $nodes); $this->assertSame('preferences selected', $nodes[0]->getAttribute('class')); $this->assertCount(1, $nodes[0]->childNodes); $link = $nodes[0]->firstChild; $this->assertSame('a', $link->nodeName); $this->assertSame('Edit user preferences', $link->getAttribute('title')); $this->assertStringEndsWith('?_task=settings&_action=preferences', $link->getAttribute('href')); } /** * Test timezone_label() method */ public function test_timezone_label() { $result = \rcmail_action_settings_index::timezone_label('Europe/Warsaw'); $this->assertSame('Europe/Warsaw', $result); } /** * Test timezone_standard_time_label() method */ public function test_timezone_standard_time_data() { $result = \rcmail_action_settings_index::timezone_standard_time_data('UTC'); $this->assertSame('+00:00', $result['offset']); } /** * Test attach_images() method */ public function test_attach_images() { $result = \rcmail_action_settings_index::attach_images('

test

', 'identity'); // TODO: test image replacement $this->assertSame('

test

', $result); } /** * Test wash_html() method */ public function test_wash_html() { $result = \rcmail_action_settings_index::wash_html('

test

'); $this->assertSame('

test

', $result); } }