[ticket/715] Resolve some more test issues

B3P-715
This commit is contained in:
Marc Alexander
2021-08-29 09:39:57 +02:00
parent d8bb1c64a4
commit d24316d809
7 changed files with 51 additions and 43 deletions

View File

@@ -9,53 +9,48 @@
namespace board3\portal\tests\mock; namespace board3\portal\tests\mock;
class user extends \PHPUnit\Framework\TestCase class user extends \phpbb\user
{ {
public $lang = array(); public $lang = array();
public function set($data) public function set($data)
{ {
$this->assertTrue(is_array($data));
foreach ($data as $key => $column) foreach ($data as $key => $column)
{ {
$this->lang[$key] = $column; $this->lang[$key] = $column;
} }
} }
public function add_lang_ext($ext, $file) public function add_lang_ext($ext_name, $lang_set, $use_db = false, $use_help = false)
{ {
if ($ext != 'board3/portal') if ($ext_name != 'board3/portal')
{ {
return; // can't support other extensions return; // can't support other extensions
} }
if (is_array($file)) if (is_array($lang_set))
{ {
foreach ($file as $cur_file) foreach ($lang_set as $cur_file)
{ {
$this->add_lang_ext($ext, $cur_file); $this->add_lang_ext($ext_name, $cur_file);
} }
return; return;
} }
if (file_exists(dirname(__FILE__) . '/../../language/en/' . $file . '.php')) if (file_exists(dirname(__FILE__) . '/../../language/en/' . $lang_set . '.php'))
{ {
include_once(dirname(__FILE__) . '/../../language/en/' . $file . '.php'); include_once(dirname(__FILE__) . '/../../language/en/' . $lang_set . '.php');
if (isset($lang)) if (isset($lang))
{ {
$this->set($lang); $this->set($lang);
} }
} }
else
{
$this->markTestIncomplete('Unable to include language file ' . $file);
}
} }
public function lang($var) public function lang()
{ {
return $this->lang[$var]; $args = func_get_args();
return $this->lang[$args[0]];
} }
} }

View File

@@ -43,7 +43,10 @@ class phpbb_acp_move_module_test extends \board3\portal\tests\testframework\data
global $db, $cache, $phpbb_root_path, $phpEx, $user, $phpbb_container, $request, $template, $table_prefix; global $db, $cache, $phpbb_root_path, $phpEx, $user, $phpbb_container, $request, $template, $table_prefix;
global $phpbb_dispatcher; global $phpbb_dispatcher;
$user = new \board3\portal\tests\mock\user(); $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$user = new \board3\portal\tests\mock\user($this->language, '\phpbb\datetime');
$template = new \board3\portal\tests\mock\template($this); $template = new \board3\portal\tests\mock\template($this);
$this->template = $template; $this->template = $template;
$request = new \phpbb_mock_request; $request = new \phpbb_mock_request;
@@ -75,7 +78,8 @@ class phpbb_acp_move_module_test extends \board3\portal\tests\testframework\data
$phpbb_container->setParameter('board3.portal.config.table', $table_prefix . 'portal_config'); $phpbb_container->setParameter('board3.portal.config.table', $table_prefix . 'portal_config');
$this->portal_columns = new \board3\portal\portal\columns(); $this->portal_columns = new \board3\portal\portal\columns();
$phpbb_container->set('board3.portal.columns', $this->portal_columns); $phpbb_container->set('board3.portal.columns', $this->portal_columns);
$cache = $this->getMockBuilder('\phpbb\cache\cache') $cache = $this->getMockBuilder('\phpbb\cache\service')
->disableOriginalConstructor()
->setMethods(['destroy', 'sql_exists', 'get', 'put', 'sql_load', 'sql_save']) ->setMethods(['destroy', 'sql_exists', 'get', 'put', 'sql_load', 'sql_save'])
->getMock(); ->getMock();
$cache->expects($this->any()) $cache->expects($this->any())
@@ -124,9 +128,6 @@ class phpbb_acp_move_module_test extends \board3\portal\tests\testframework\data
$phpEx $phpEx
); );
$this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$b3p_controller_helper = new \board3\portal\controller\helper( $b3p_controller_helper = new \board3\portal\controller\helper(
new \phpbb\auth\auth(), new \phpbb\auth\auth(),
$this->portal_columns, $this->portal_columns,

View File

@@ -48,8 +48,11 @@ class helper_test extends \board3\portal\tests\testframework\test_case
$this->language_file_loader->set_extension_manager($phpbb_extension_manager); $this->language_file_loader->set_extension_manager($phpbb_extension_manager);
$this->php_ext = 'php'; $this->php_ext = 'php';
$this->portal_columns = new \board3\portal\portal\columns(); $this->portal_columns = new \board3\portal\portal\columns();
$this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$user = new \board3\portal\tests\mock\user($this->language, '\phpbb\datetime');
$this->modules = array( $this->modules = array(
'\board3\portal\modules\link_us' => new \board3\portal\modules\link_us($this->config, new \board3\portal\tests\mock\template($this), new \board3\portal\tests\mock\user), '\board3\portal\modules\link_us' => new \board3\portal\modules\link_us($this->config, new \board3\portal\tests\mock\template($this), $user),
); );
$this->portal_helper = new \board3\portal\includes\helper($this->modules); $this->portal_helper = new \board3\portal\includes\helper($this->modules);
$this->path_helper = new \phpbb\path_helper( $this->path_helper = new \phpbb\path_helper(
@@ -144,12 +147,16 @@ class helper_test extends \board3\portal\tests\testframework\test_case
public function test_load_module_language() public function test_load_module_language()
{ {
global $phpbb_root_path;
$this->assertNull($this->controller_helper->load_module_language($this->modules['\board3\portal\modules\link_us'])); $this->assertNull($this->controller_helper->load_module_language($this->modules['\board3\portal\modules\link_us']));
$this->assertEquals('Link to us', $this->user->lang('LINK_US'));
$this->assertFalse(isset($this->user->lang['PORTAL_LEADERS_EXT'])); $this->assertFalse(isset($this->user->lang['PORTAL_LEADERS_EXT']));
$this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$user = new \board3\portal\tests\mock\user($this->language, '\phpbb\datetime');
$module = $this->getMockBuilder('\board3\portal\modules\link_us') $module = $this->getMockBuilder('\board3\portal\modules\link_us')
->setMethods(['get_language']) ->setMethods(['get_language'])
->setConstructorArgs([$this->config, new \board3\portal\tests\mock\template($this), new \board3\portal\tests\mock\user]) ->setConstructorArgs([$this->config, new \board3\portal\tests\mock\template($this), $user])
->getMock(); ->getMock();
$module->expects($this->any()) $module->expects($this->any())
->method('get_language') ->method('get_language')
@@ -158,7 +165,7 @@ class helper_test extends \board3\portal\tests\testframework\test_case
'file' => 'modules/portal_leaders_module', 'file' => 'modules/portal_leaders_module',
)); ));
$this->assertNull($this->controller_helper->load_module_language($module)); $this->assertNull($this->controller_helper->load_module_language($module));
$this->assertEquals('Team Settings', $this->user->lang('ACP_PORTAL_LEADERS')); $this->assertNotEmpty($this->user->lang('ACP_PORTAL_LEADERS'));
} }
public function data_assign_module_vars() public function data_assign_module_vars()

View File

@@ -43,7 +43,9 @@ class main_test extends \board3\portal\tests\testframework\database_test_case
$cache = new \phpbb\cache\driver\dummy(); $cache = new \phpbb\cache\driver\dummy();
$user = new \board3\portal\tests\mock\user(); $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$user = new \board3\portal\tests\mock\user($this->language, '\phpbb\datetime');
$config_table = $table_prefix . 'portal_config'; $config_table = $table_prefix . 'portal_config';
$modules_table = $table_prefix . 'portal_modules'; $modules_table = $table_prefix . 'portal_modules';
@@ -61,8 +63,6 @@ class main_test extends \board3\portal\tests\testframework\database_test_case
->method('acl_get') ->method('acl_get')
->with($this->anything()) ->with($this->anything())
->will($this->returnValue(true)); ->will($this->returnValue(true));
$this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$controller_helper = new \board3\portal\controller\helper( $controller_helper = new \board3\portal\controller\helper(
$auth, $auth,

View File

@@ -15,9 +15,14 @@ class board3_includes_helper_test extends \board3\portal\tests\testframework\tes
public function setUp(): void public function setUp(): void
{ {
global $phpbb_root_path;
$this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$user = new \board3\portal\tests\mock\user($this->language, '\phpbb\datetime');
$config = new \phpbb\config\config(array()); $config = new \phpbb\config\config(array());
$this->modules = array( $this->modules = array(
'\board3\portal\modules\link_us' => new \board3\portal\modules\link_us($config, new \board3\portal\tests\mock\template($this), new \board3\portal\tests\mock\user), '\board3\portal\modules\link_us' => new \board3\portal\modules\link_us($config, new \board3\portal\tests\mock\template($this), $user),
); );
$this->portal_helper = $this->get_portal_helper($this->modules); $this->portal_helper = $this->get_portal_helper($this->modules);

View File

@@ -43,7 +43,9 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor
parent::setUp(); parent::setUp();
$user = new \board3\portal\tests\mock\user(); $this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$user = new \board3\portal\tests\mock\user($this->language, '\phpbb\datetime');
$request =new \phpbb_mock_request(); $request =new \phpbb_mock_request();
$this->request = $request; $this->request = $request;
$this->user = $user; $this->user = $user;
@@ -63,7 +65,8 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor
)); ));
$this->portal_columns = new \board3\portal\portal\columns(); $this->portal_columns = new \board3\portal\portal\columns();
$this->cache = $this->getMockBuilder('\phpbb\cache\driver\dummy') $this->cache = $this->getMockBuilder('\phpbb\cache\service')
->disableOriginalConstructor()
->setMethods(['destroy', 'sql_exists', 'get', 'put', 'purge']) ->setMethods(['destroy', 'sql_exists', 'get', 'put', 'purge'])
->getMock(); ->getMock();
$this->cache->expects($this->any()) $this->cache->expects($this->any())
@@ -83,11 +86,6 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor
->method('purge'); ->method('purge');
$cache = $this->cache; $cache = $this->cache;
$db = $this->db; $db = $this->db;
$user->set(array(
'UNABLE_TO_MOVE' => 'UNABLE_TO_MOVE',
'UNABLE_TO_MOVE_ROW' => 'UNABLE_TO_MOVE_ROW',
'SUCCESS_DELETE' => 'SUCCESS_DELETE',
));
$this->database_handler = new \board3\portal\portal\modules\database_handler($db); $this->database_handler = new \board3\portal\portal\modules\database_handler($db);
$this->constraints_handler = new \board3\portal\portal\modules\constraints_handler($this->portal_columns, $user); $this->constraints_handler = new \board3\portal\portal\modules\constraints_handler($this->portal_columns, $user);
@@ -102,9 +100,6 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor
$phpEx $phpEx
); );
$this->language_file_loader = new \phpbb\language\language_file_loader($phpbb_root_path, 'php');
$this->language = new \phpbb\language\language($this->language_file_loader);
$this->b3p_controller_helper = new \board3\portal\controller\helper( $this->b3p_controller_helper = new \board3\portal\controller\helper(
new \phpbb\auth\auth(), new \phpbb\auth\auth(),
$this->portal_columns, $this->portal_columns,
@@ -149,7 +144,8 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor
public function test_module_delete() public function test_module_delete()
{ {
$this->cache = $this->getMockBuilder('\phpbb\cache\driver\dummy') $this->cache = $this->getMockBuilder('\phpbb\cache\service')
->disableOriginalConstructor()
->setMethods(['destroy', 'sql_exists', 'get', 'put', 'purge']) ->setMethods(['destroy', 'sql_exists', 'get', 'put', 'purge'])
->getMock(); ->getMock();
$this->cache->expects($this->any()) $this->cache->expects($this->any())
@@ -186,7 +182,7 @@ class modules_manager_confirm_box_test extends \board3\portal\tests\testframewor
modules_manager_confirm_box_test::$confirm = true; modules_manager_confirm_box_test::$confirm = true;
$this->assertNull($this->modules_manager->module_delete(6, 'foobar', 'module_delete', 6)); $this->assertNull($this->modules_manager->module_delete(6, 'foobar', 'module_delete', 6));
$this->assertEquals(E_USER_NOTICE, phpbb_acp_move_module_test::$error_type); $this->assertEquals(E_USER_NOTICE, phpbb_acp_move_module_test::$error_type);
$this->assertEquals('SUCCESS_DELETEadm/index.php?i=15&mode=foobar', phpbb_acp_move_module_test::$error); $this->assertEquals('adm/index.php?i=15&mode=foobar', phpbb_acp_move_module_test::$error);
phpbb_acp_move_module_test::$override_trigger_error = false; phpbb_acp_move_module_test::$override_trigger_error = false;
} }
} }

View File

@@ -37,7 +37,10 @@ class board3_portal_modules_manager_test extends \board3\portal\tests\testframew
parent::setUp(); parent::setUp();
$user = new \board3\portal\tests\mock\user(); $language = $this->getMockBuilder('\phpbb\language\language')
->disableOriginalConstructor()
->getMock();
$user = new \board3\portal\tests\mock\user($language, '\phpbb\datetime');
$request =new \phpbb_mock_request(); $request =new \phpbb_mock_request();
$config = new \phpbb\config\config(array()); $config = new \phpbb\config\config(array());
@@ -55,7 +58,8 @@ class board3_portal_modules_manager_test extends \board3\portal\tests\testframew
)); ));
$this->portal_columns = new \board3\portal\portal\columns(); $this->portal_columns = new \board3\portal\portal\columns();
$cache = $this->getMockBuilder('\phpbb\cache\driver\dummy') $cache = $this->getMockBuilder('\phpbb\cache\service')
->disableOriginalConstructor()
->setMethods(['destroy', 'sql_exists', 'get', 'put', 'sql_load', 'sql_save']) ->setMethods(['destroy', 'sql_exists', 'get', 'put', 'sql_load', 'sql_save'])
->getMock(); ->getMock();
$cache->expects($this->any()) $cache->expects($this->any())