diff options
author | Tristan Darricau <github@nicofuma.fr> | 2017-01-22 23:15:26 +0100 |
---|---|---|
committer | Tristan Darricau <github@nicofuma.fr> | 2017-01-22 23:15:26 +0100 |
commit | 7c77e333138e6c705ffbfd3028ce1d2002404965 (patch) | |
tree | c0fa7de1eac82faa1cd758fe6ed92920570d311a /tests/version/version_test.php | |
parent | f7ccd7af8ef529bd8a43b8a3e0b342f9b228d961 (diff) | |
parent | 085a839963b61e9812aa06601b1ffeb2eb077ab9 (diff) | |
download | forums-7c77e333138e6c705ffbfd3028ce1d2002404965.tar forums-7c77e333138e6c705ffbfd3028ce1d2002404965.tar.gz forums-7c77e333138e6c705ffbfd3028ce1d2002404965.tar.bz2 forums-7c77e333138e6c705ffbfd3028ce1d2002404965.tar.xz forums-7c77e333138e6c705ffbfd3028ce1d2002404965.zip |
Merge branch '3.1.x' into 3.2.x
* 3.1.x:
[ticket/14968] Use earlier version as written in comment
[ticket/14968] Update docblock and ensure method returns array
[ticket/14968] Display possible upgrade on acp index and update page
[ticket/14968] Add method for retrieving updates on current branch
Diffstat (limited to 'tests/version/version_test.php')
-rw-r--r-- | tests/version/version_test.php | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/tests/version/version_test.php b/tests/version/version_test.php index 93d47a40a6..698975bc72 100644 --- a/tests/version/version_test.php +++ b/tests/version/version_test.php @@ -341,4 +341,204 @@ class phpbb_version_helper_test extends phpbb_test_case $this->assertSame($expected, $version_helper->get_latest_on_current_branch()); } + + public function get_update_on_branch_data() + { + return array( + array( + '1.0.0', + array( + '1.0' => array( + 'current' => '1.0.1', + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array( + 'current' => '1.0.1', + ), + ), + array( + '1.0.1', + array( + '1.0' => array( + 'current' => '1.0.1', + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array(), + ), + array( + '1.0.1-a1', + array( + '1.0' => array( + 'current' => '1.0.1-a2', + ), + '1.1' => array( + 'current' => '1.1.0', + ), + ), + array( + 'current' => '1.0.1-a2', + ), + ), + array( + '1.1.0', + array( + '1.0' => array( + 'current' => '1.0.1', + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array( + 'current' => '1.1.1', + ), + ), + array( + '1.1.1', + array( + '1.0' => array( + 'current' => '1.0.1', + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array(), + ), + array( + '1.1.0-a1', + array( + '1.0' => array( + 'current' => '1.0.1', + ), + '1.1' => array( + 'current' => '1.1.0-a2', + ), + ), + array( + 'current' => '1.1.0-a2', + ), + ), + array( + '1.1.0', + array(), + array(), + ), + // Latest safe release is 1.0.1 + array( + '1.0.0', + array( + '1.0' => array( + 'current' => '1.0.1', + 'security' => '1.0.1', + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array( + 'current' => '1.0.1', + 'security' => '1.0.1', + ), + ), + // Latest safe release is 1.0.0 + array( + '1.0.0', + array( + '1.0' => array( + 'current' => '1.0.1', + 'security' => '1.0.0', + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array( + 'current' => '1.0.1', + 'security' => '1.0.0', + ), + ), + // Latest safe release is 1.1.0 + array( + '1.0.0', + array( + '1.0' => array( + 'current' => '1.0.1', + 'security' => '1.1.0', + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array( + 'current' => '1.1.1', + ), + ), + // Latest 1.0 release is EOL + array( + '1.0.0', + array( + '1.0' => array( + 'current' => '1.0.1', + 'eol' => true, + ), + '1.1' => array( + 'current' => '1.1.1', + ), + ), + array( + 'current' => '1.1.1', + ), + ), + // All are EOL -- somewhat undefined behavior + array( + '1.0.0', + array( + '1.0' => array( + 'current' => '1.0.1', + 'eol' => true, + ), + '1.1' => array( + 'current' => '1.1.1', + 'eol' => true, + ), + ), + array(), + ), + ); + } + + /** + * @dataProvider get_update_on_branch_data + */ + public function test_get_update_on_branch($current_version, $versions, $expected) + { + $version_helper = $this + ->getMockBuilder('\phpbb\version_helper') + ->setMethods(array( + 'get_versions_matching_stability', + )) + ->setConstructorArgs(array( + $this->cache, + new \phpbb\config\config(array( + 'version' => $current_version, + )), + new \phpbb\file_downloader(), + new \phpbb\user('\phpbb\datetime'), + )) + ->getMock() + ; + + $version_helper->expects($this->any()) + ->method('get_versions_matching_stability') + ->will($this->returnValue($versions)); + + $this->assertSame($expected, $version_helper->get_update_on_branch()); + } } |