[ticket/13803] Added contact_admin_info tests

PHPBB3-13803
This commit is contained in:
JoshyPHP 2015-05-10 01:54:54 +02:00
parent 3827a131ae
commit 54b18df084
4 changed files with 108 additions and 4 deletions

View file

@ -1,6 +1,6 @@
services:
text_reparser.admin_contact_info:
class: phpbb\textreparser\plugins\admin_contact_info
text_reparser.contact_admin_info:
class: phpbb\textreparser\plugins\contact_admin_info
arguments:
- @config_text
tags:

View file

@ -13,7 +13,7 @@
namespace phpbb\textreparser\plugins;
class admin_contact_info extends \phpbb\textreparser\base
class contact_admin_info extends \phpbb\textreparser\base
{
/**
* @var \phpbb\config\db_text
@ -64,6 +64,6 @@ class admin_contact_info extends \phpbb\textreparser\base
*/
protected function save_record(array $record)
{
$this->config_text->set('admin_contact_info', $record['text']);
$this->config_text->set('contact_admin_info', $record['text']);
}
}

View file

@ -0,0 +1,81 @@
<?php
/**
*
* This file is part of the phpBB Forum Software package.
*
* @copyright (c) phpBB Limited <https://www.phpbb.com>
* @license GNU General Public License, version 2 (GPL-2.0)
*
* For full copyright and license information, please see
* the docs/CREDITS.txt file.
*
*/
require_once __DIR__ . '/../../phpBB/includes/functions.php';
require_once __DIR__ . '/../../phpBB/includes/functions_content.php';
require_once __DIR__ . '/../test_framework/phpbb_database_test_case.php';
class phpbb_textreparser_contact_admin_info_test extends phpbb_database_test_case
{
protected $db;
public function getDataSet()
{
return $this->createXMLDataSet(__DIR__ . '/fixtures/contact_admin_info.xml');
}
protected function get_reparser()
{
return new \phpbb\textreparser\plugins\contact_admin_info(new \phpbb\config\db_text($this->db, CONFIG_TEXT_TABLE));
}
public function setUp()
{
global $config;
if (!isset($config))
{
$config = new \phpbb\config\config(array());
}
$this->get_test_case_helpers()->set_s9e_services();
$this->db = $this->new_dbal();
parent::setUp();
}
public function test_get_max_id()
{
$reparser = $this->get_reparser();
$this->assertEquals(1, $reparser->get_max_id());
}
public function testReparse()
{
$reparser = $this->get_reparser();
$reparser->reparse_range(1, 1);
$sql = 'SELECT config_name, config_value
FROM ' . CONFIG_TEXT_TABLE . '
ORDER BY config_name';
$result = $this->db->sql_query($sql);
$rows = $this->db->sql_fetchrowset($result);
$this->db->sql_freeresult($result);
$expected = array(
array(
'config_name' => 'contact_admin_info',
'config_value' => '<r><EMAIL email="admin@example.org"><s>[email]</s>admin@example.org<e>[/email]</e></EMAIL></r>',
),
array(
'config_name' => 'contact_admin_info_bitfield',
'config_value' => 'ACA=',
),
array(
'config_name' => 'contact_admin_info_flags',
'config_value' => '7',
),
array(
'config_name' => 'contact_admin_info_uid',
'config_value' => '1a2hbwf5',
),
);
$this->assertEquals($expected, $rows);
}
}

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8" ?>
<dataset>
<table name="phpbb_config_text">
<column>config_name</column>
<column>config_value</column>
<row>
<value>contact_admin_info</value>
<value>[email:1a2hbwf5]admin@example&#46;org[/email:1a2hbwf5]</value>
</row>
<row>
<value>contact_admin_info_uid</value>
<value>1a2hbwf5</value>
</row>
<row>
<value>contact_admin_info_bitfield</value>
<value>ACA=</value>
</row>
<row>
<value>contact_admin_info_flags</value>
<value>7</value>
</row>
</table>
</dataset>