aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--phpBB/config/default/container/services_text_reparser.yml4
-rw-r--r--phpBB/phpbb/textreparser/plugins/contact_admin_info.php (renamed from phpBB/phpbb/textreparser/plugins/admin_contact_info.php)4
-rw-r--r--tests/text_reparser/contact_admin_info_test.php81
-rw-r--r--tests/text_reparser/fixtures/contact_admin_info.xml23
4 files changed, 108 insertions, 4 deletions
diff --git a/phpBB/config/default/container/services_text_reparser.yml b/phpBB/config/default/container/services_text_reparser.yml
index c10a8c600a..f25728d9c8 100644
--- a/phpBB/config/default/container/services_text_reparser.yml
+++ b/phpBB/config/default/container/services_text_reparser.yml
@@ -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:
diff --git a/phpBB/phpbb/textreparser/plugins/admin_contact_info.php b/phpBB/phpbb/textreparser/plugins/contact_admin_info.php
index e432ddea81..d21ef89445 100644
--- a/phpBB/phpbb/textreparser/plugins/admin_contact_info.php
+++ b/phpBB/phpbb/textreparser/plugins/contact_admin_info.php
@@ -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']);
}
}
diff --git a/tests/text_reparser/contact_admin_info_test.php b/tests/text_reparser/contact_admin_info_test.php
new file mode 100644
index 0000000000..5cccdfa4d5
--- /dev/null
+++ b/tests/text_reparser/contact_admin_info_test.php
@@ -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);
+ }
+}
diff --git a/tests/text_reparser/fixtures/contact_admin_info.xml b/tests/text_reparser/fixtures/contact_admin_info.xml
new file mode 100644
index 0000000000..13cd82b1a4
--- /dev/null
+++ b/tests/text_reparser/fixtures/contact_admin_info.xml
@@ -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>