1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-30 21:40:43 +02:00

Merge pull request #4377 from rxu/ticket/14703

[ticket/14703] Fix parent module selection for custom extension modules
This commit is contained in:
Marc Alexander
2016-08-31 21:39:09 +02:00
4 changed files with 211 additions and 67 deletions

View File

@@ -20,7 +20,7 @@
<value>acp</value>
<value>0</value>
<value>1</value>
<value>4</value>
<value>6</value>
<value>ACP_CAT</value>
<value></value>
<value></value>
@@ -38,5 +38,57 @@
<value>test</value>
<value></value>
</row>
<row>
<value>3</value>
<value>1</value>
<value>1</value>
<value></value>
<value>acp</value>
<value>1</value>
<value>4</value>
<value>5</value>
<value>ACP_FORUM_BASED_PERMISSIONS</value>
<value></value>
<value></value>
</row>
<row>
<value>4</value>
<value>1</value>
<value>1</value>
<value></value>
<value>acp</value>
<value>0</value>
<value>7</value>
<value>12</value>
<value>ACP_CAT_FORUMS</value>
<value></value>
<value></value>
</row>
<row>
<value>5</value>
<value>1</value>
<value>1</value>
<value></value>
<value>acp</value>
<value>4</value>
<value>8</value>
<value>11</value>
<value>ACP_FORUM_BASED_PERMISSIONS</value>
<value></value>
<value></value>
</row>
<row>
<value>6</value>
<value>1</value>
<value>1</value>
<value></value>
<value>acp</value>
<value>5</value>
<value>9</value>
<value>10</value>
<value>ACP_FORUM_BASED_PERMISSIONS_CHILD_1</value>
<value></value>
<value></value>
</row>
</table>
</dataset>

View File

@@ -118,6 +118,44 @@ class phpbb_dbal_migrator_tool_module_test extends phpbb_database_test_case
$this->fail($e);
}
$this->assertEquals(true, $this->tool->exists('acp', 'ACP_NEW_CAT', 'ACP_NEW_MODULE'));
// Test adding module when plural parent module_langname exists
// PHPBB3-14703
// Adding fail
try
{
$this->tool->add('acp', 'ACP_FORUM_BASED_PERMISSIONS', array(
'module_basename' => 'acp_new_permissions_module',
'module_langname' => 'ACP_NEW_PERMISSIONS_MODULE',
'module_mode' => 'test',
'module_auth' => '',
));
$this->fail('Exception not thrown');
}
catch (Exception $e)
{
$this->assertEquals('phpbb\db\migration\exception', get_class($e));
$this->assertEquals('MODULE_EXIST_MULTIPLE', $e->getMessage());
}
// Test adding module when plural parent module_langname exists
// PHPBB3-14703
// Adding success
try
{
$this->tool->add('acp', 'ACP_FORUM_BASED_PERMISSIONS', array(
'module_basename' => 'acp_new_permissions_module',
'module_langname' => 'ACP_NEW_PERMISSIONS_MODULE',
'module_mode' => 'test',
'module_auth' => '',
'after' => 'ACP_FORUM_BASED_PERMISSIONS_CHILD_1',
));
}
catch (Exception $e)
{
$this->fail($e);
}
$this->assertEquals(true, $this->tool->exists('acp', 'ACP_FORUM_BASED_PERMISSIONS', 'ACP_NEW_PERMISSIONS_MODULE'));
}
public function test_remove()