aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/dbal/migrator_test.php2
-rw-r--r--tests/extension/manager_test.php2
-rw-r--r--tests/extension/metadata_manager_test.php24
-rw-r--r--tests/functional/extension_acp_test.php2
-rw-r--r--tests/functional/metadata_manager_test.php2
-rw-r--r--tests/log/delete_test.php60
-rw-r--r--tests/log/fixtures/delete_log.xml232
-rw-r--r--tests/test_framework/phpbb_functional_test_case.php2
8 files changed, 313 insertions, 13 deletions
diff --git a/tests/dbal/migrator_test.php b/tests/dbal/migrator_test.php
index 381fe16115..4a1d15aea4 100644
--- a/tests/dbal/migrator_test.php
+++ b/tests/dbal/migrator_test.php
@@ -60,12 +60,14 @@ class phpbb_dbal_migrator_test extends phpbb_database_test_case
$container = new phpbb_mock_container_builder();
$container->set('migrator', $migrator);
+ $user = new \phpbb\user();
$this->extension_manager = new \phpbb\extension\manager(
$container,
$this->db,
$this->config,
new phpbb\filesystem(),
+ $user,
'phpbb_ext',
dirname(__FILE__) . '/../../phpBB/',
'php',
diff --git a/tests/extension/manager_test.php b/tests/extension/manager_test.php
index 6acade1e87..d9f8fbd1a4 100644
--- a/tests/extension/manager_test.php
+++ b/tests/extension/manager_test.php
@@ -101,6 +101,7 @@ class phpbb_extension_manager_test extends phpbb_database_test_case
$phpbb_root_path = __DIR__ . './../../phpBB/';
$php_ext = 'php';
$table_prefix = 'phpbb_';
+ $user = new \phpbb\user();
$migrator = new \phpbb\db\migrator(
$config,
@@ -121,6 +122,7 @@ class phpbb_extension_manager_test extends phpbb_database_test_case
$db,
$config,
new \phpbb\filesystem(),
+ $user,
'phpbb_ext',
dirname(__FILE__) . '/',
$php_ext,
diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php
index 95544a6f7c..3678ac0a3f 100644
--- a/tests/extension/metadata_manager_test.php
+++ b/tests/extension/metadata_manager_test.php
@@ -77,6 +77,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
$this->db,
$this->config,
new \phpbb\filesystem(),
+ $this->user,
'phpbb_ext',
$this->phpbb_root_path,
$this->phpEx,
@@ -97,7 +98,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e){}
- $this->assertEquals((string) $e, 'The required file does not exist: ' . $this->phpbb_root_path . $this->extension_manager->get_extension_path($ext_name) . 'composer.json');
+ $this->assertEquals((string) $e, $this->user->lang('FILE_NOT_FOUND', $this->phpbb_root_path . $this->extension_manager->get_extension_path($ext_name) . 'composer.json'));
}
// Should be the same as a direct json_decode of the composer.json file
@@ -136,7 +137,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Required meta field \'name\' has not been set.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_NOT_SET', 'name'));
}
try
@@ -147,7 +148,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Required meta field \'type\' has not been set.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_NOT_SET', 'type'));
}
try
@@ -158,7 +159,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Required meta field \'license\' has not been set.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_NOT_SET', 'license'));
}
try
@@ -169,7 +170,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Required meta field \'version\' has not been set.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_NOT_SET', 'version'));
}
try
@@ -180,7 +181,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Required meta field \'authors\' has not been set.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_NOT_SET', 'authors'));
}
$manager->merge_metadata(array(
@@ -197,7 +198,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Required meta field \'author name\' has not been set.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_NOT_SET', 'author name'));
}
}
@@ -224,7 +225,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Meta field \'name\' is invalid.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_INVALID', 'name'));
}
try
@@ -235,7 +236,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Meta field \'type\' is invalid.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_INVALID', 'type'));
}
try
@@ -246,7 +247,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Meta field \'license\' is invalid.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_INVALID', 'license'));
}
try
@@ -257,7 +258,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
}
catch(\phpbb\extension\exception $e)
{
- $this->assertEquals((string) $e, 'Meta field \'version\' is invalid.');
+ $this->assertEquals((string) $e, $this->user->lang('META_FIELD_INVALID', 'version'));
}
}
@@ -437,6 +438,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case
$this->config,
$this->extension_manager,
$this->template,
+ $this->user,
$this->phpbb_root_path
);
}
diff --git a/tests/functional/extension_acp_test.php b/tests/functional/extension_acp_test.php
index 8f0f9c6700..b6dd5db708 100644
--- a/tests/functional/extension_acp_test.php
+++ b/tests/functional/extension_acp_test.php
@@ -180,7 +180,7 @@ class phpbb_functional_extension_acp_test extends phpbb_functional_test_case
{
// test2 is not available (error)
$crawler = self::request('GET', 'adm/index.php?i=acp_extensions&mode=main&action=delete_data_pre&ext_name=test2&sid=' . $this->sid);
- $this->assertContains('The required file does not exist', $crawler->filter('.errorbox')->text());
+ $this->assertContains($this->lang('FILE_NOT_FOUND', ''), $crawler->filter('.errorbox')->text());
// foo is not disabled (redirect to list)
$crawler = self::request('GET', 'adm/index.php?i=acp_extensions&mode=main&action=delete_data_pre&ext_name=vendor2%2Ffoo&sid=' . $this->sid);
diff --git a/tests/functional/metadata_manager_test.php b/tests/functional/metadata_manager_test.php
index 020e9cd142..080822d249 100644
--- a/tests/functional/metadata_manager_test.php
+++ b/tests/functional/metadata_manager_test.php
@@ -82,6 +82,6 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case
$crawler = self::request('GET', 'adm/index.php?i=acp_extensions&mode=main&action=details&ext_name=not%2Fexists&sid=' . $this->sid);
// Error message because the files do not exist
- $this->assertContains('The required file does not exist:', $crawler->filter('#main')->text());
+ $this->assertContains($this->lang('FILE_NOT_FOUND', ''), $crawler->filter('#main')->text());
}
}
diff --git a/tests/log/delete_test.php b/tests/log/delete_test.php
new file mode 100644
index 0000000000..f10e3e582b
--- /dev/null
+++ b/tests/log/delete_test.php
@@ -0,0 +1,60 @@
+<?php
+/**
+*
+* @package testing
+* @copyright (c) 2012 phpBB Group
+* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
+*
+*/
+
+require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php';
+require_once dirname(__FILE__) . '/../../phpBB/includes/functions_content.php';
+require_once dirname(__FILE__) . '/../../phpBB/includes/utf/utf_tools.php';
+
+class phpbb_log_delete_test extends phpbb_database_test_case
+{
+ public function getDataSet()
+ {
+ return $this->createXMLDataSet(dirname(__FILE__) . '/fixtures/delete_log.xml');
+ }
+
+ public function test_log_delete()
+ {
+ global $phpbb_root_path, $phpEx, $db, $phpbb_dispatcher, $auth;
+
+ $db = $this->new_dbal();
+ $cache = new phpbb_mock_cache;
+ $phpbb_dispatcher = new phpbb_mock_event_dispatcher();
+ $user = $this->getMock('\phpbb\user');
+ $user->data['user_id'] = 1;
+ $auth = $this->getMock('\phpbb\auth\auth');
+
+ $log = new \phpbb\log\log($db, $user, $auth, $phpbb_dispatcher, $phpbb_root_path, 'adm/', $phpEx, LOG_TABLE);
+
+ // Delete all admin logs
+ $this->assertCount(2, $log->get_logs('admin'));
+ $log->delete('admin');
+ // One entry is added to the admin log when the logs are purged
+ $this->assertCount(1, $log->get_logs('admin'));
+
+ // Delete with keyword
+ $this->assertCount(1, $log->get_logs('mod', false, 0, 0, 0, 0, 0, 0, 'l.log_time DESC', 'guest'));
+ $log->delete('mod', array('keywords' => 'guest'));
+ $this->assertEmpty($log->get_logs('mod', false, 0, 0, 0, 0, 0, 0, 'l.log_time DESC', 'guest'));
+
+ // Delete with simples conditions
+ $this->assertCount(3, $log->get_logs('mod', false, 0, 0, 12, 0, 1, 0, 'l.log_time DESC'));
+ $log->delete('mod', array('forum_id' => 12, 'user_id' => 1));
+ $this->assertEmpty($log->get_logs('mod', false, 0, 0, 12, 0, 1, 0, 'l.log_time DESC'));
+
+ // Delete with IN condition
+ $this->assertCount(2, $log->get_logs('mod', false, 0, 0, array(13, 14), 0, 0, 0, 'l.log_time DESC'));
+ $log->delete('mod', array('forum_id' => array('IN' => array(14, 13))));
+ $this->assertEmpty($log->get_logs('mod', false, 0, 0, array(13, 14), 0, 0, 0, 'l.log_time DESC'));
+
+ // Delete with a custom condition (ie: WHERE x >= 10)
+ $this->assertCount(3, $log->get_logs('critical', false, 0, 0, 0, 0, 0, 0, 'l.log_time DESC'));
+ $log->delete('critical', array('user_id' => array('>', 1)));
+ $this->assertCount(1, $log->get_logs('critical', false, 0, 0, 0, 0, 0, 0, 'l.log_time DESC'));
+ }
+}
diff --git a/tests/log/fixtures/delete_log.xml b/tests/log/fixtures/delete_log.xml
new file mode 100644
index 0000000000..4b2402102e
--- /dev/null
+++ b/tests/log/fixtures/delete_log.xml
@@ -0,0 +1,232 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<dataset>
+ <table name="phpbb_log">
+ <column>log_id</column>
+ <column>log_type</column>
+ <column>user_id</column>
+ <column>forum_id</column>
+ <column>topic_id</column>
+ <column>reportee_id</column>
+ <column>log_ip</column>
+ <column>log_time</column>
+ <column>log_operation</column>
+ <column>log_data</column>
+ <row>
+ <value>1</value>
+ <value>0</value>
+ <value>1</value>
+ <value>0</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_INSTALL_INSTALLED</value>
+ <value>a:1:{i:0;s:9:"3.1.0-dev";}</value>
+ </row>
+ <row>
+ <value>2</value>
+ <value>0</value>
+ <value>1</value>
+ <value>0</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_KEY_NOT_EXISTS</value>
+ <value>a:1:{i:0;s:15:"additional_data";}</value>
+ </row>
+ <row>
+ <value>3</value>
+ <value>2</value>
+ <value>1</value>
+ <value>0</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_CRITICAL</value>
+ <value>a:1:{i:0;s:13:"critical data";}</value>
+ </row>
+ <row>
+ <value>4</value>
+ <value>1</value>
+ <value>1</value>
+ <value>12</value>
+ <value>34</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_MOD</value>
+ <value></value>
+ </row>
+ <row>
+ <value>5</value>
+ <value>1</value>
+ <value>1</value>
+ <value>12</value>
+ <value>45</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_MOD</value>
+ <value></value>
+ </row>
+ <row>
+ <value>6</value>
+ <value>1</value>
+ <value>1</value>
+ <value>23</value>
+ <value>56</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_MOD</value>
+ <value></value>
+ </row>
+ <row>
+ <value>7</value>
+ <value>1</value>
+ <value>1</value>
+ <value>12</value>
+ <value>45</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_MOD2</value>
+ <value></value>
+ </row>
+ <row>
+ <value>8</value>
+ <value>3</value>
+ <value>1</value>
+ <value>0</value>
+ <value>0</value>
+ <value>2</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_USER</value>
+ <value>a:1:{i:0;s:5:"admin";}</value>
+ </row>
+ <row>
+ <value>9</value>
+ <value>3</value>
+ <value>1</value>
+ <value>0</value>
+ <value>0</value>
+ <value>1</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_USER</value>
+ <value>a:1:{i:0;s:5:"guest";}</value>
+ </row>
+ <row>
+ <value>10</value>
+ <value>3</value>
+ <value>1</value>
+ <value>0</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_SINGULAR_PLURAL</value>
+ <value>a:1:{i:0;i:2;}</value>
+ </row>
+ <row>
+ <value>11</value>
+ <value>1</value>
+ <value>1</value>
+ <value>15</value>
+ <value>3</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value>LOG_MOD3</value>
+ <value>a:1:{i:0;s:5:"guest";}</value>
+ </row>
+ <row>
+ <value>12</value>
+ <value>1</value>
+ <value>1</value>
+ <value>13</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value></value>
+ <value></value>
+ </row>
+ <row>
+ <value>13</value>
+ <value>1</value>
+ <value>1</value>
+ <value>14</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value></value>
+ <value></value>
+ </row>
+ <row>
+ <value>14</value>
+ <value>2</value>
+ <value>2</value>
+ <value>0</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value></value>
+ <value></value>
+ </row>
+ <row>
+ <value>15</value>
+ <value>2</value>
+ <value>2</value>
+ <value>0</value>
+ <value>0</value>
+ <value>0</value>
+ <value>127.0.0.1</value>
+ <value>1</value>
+ <value></value>
+ <value></value>
+ </row>
+ </table>
+ <table name="phpbb_users">
+ <column>user_id</column>
+ <column>username</column>
+ <column>username_clean</column>
+ <column>user_permissions</column>
+ <column>user_sig</column>
+ <row>
+ <value>1</value>
+ <value>Anonymous</value>
+ <value>Anonymous</value>
+ <value></value>
+ <value></value>
+ </row>
+ <row>
+ <value>2</value>
+ <value>admin</value>
+ <value>admin</value>
+ <value></value>
+ <value></value>
+ </row>
+ </table>
+ <table name="phpbb_topics">
+ <column>topic_id</column>
+ <column>forum_id</column>
+ <row>
+ <value>34</value>
+ <value>12</value>
+ </row>
+ <row>
+ <value>45</value>
+ <value>12</value>
+ </row>
+ <row>
+ <value>56</value>
+ <value>23</value>
+ </row>
+ </table>
+</dataset>
diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php
index 0bfdfa57ac..182ffaaaf7 100644
--- a/tests/test_framework/phpbb_functional_test_case.php
+++ b/tests/test_framework/phpbb_functional_test_case.php
@@ -203,12 +203,14 @@ class phpbb_functional_test_case extends phpbb_test_case
);
$container = new phpbb_mock_container_builder();
$container->set('migrator', $migrator);
+ $user = new \phpbb\user();
$extension_manager = new \phpbb\extension\manager(
$container,
$db,
$config,
new phpbb\filesystem(),
+ $user,
self::$config['table_prefix'] . 'ext',
dirname(__FILE__) . '/',
$phpEx,