|
|
|
|
@ -26,9 +26,65 @@ class UpdaterTest extends \Test\TestCase { |
|
|
|
|
/** |
|
|
|
|
* @dataProvider versionCompatibilityTestData |
|
|
|
|
*/ |
|
|
|
|
function testIsUpgradePossible($oldVersion, $newVersion, $result) { |
|
|
|
|
$updater = new Updater(); |
|
|
|
|
public function testIsUpgradePossible($oldVersion, $newVersion, $result) { |
|
|
|
|
$updater = new Updater(\OC::$server->getHTTPHelper()); |
|
|
|
|
$this->assertSame($result, $updater->isUpgradePossible($oldVersion, $newVersion)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function testCheck(){ |
|
|
|
|
$httpHelper = $this->getMockBuilder('\OC\HTTPHelper') |
|
|
|
|
->getMock(); |
|
|
|
|
|
|
|
|
|
$httpHelper->method('getUrlContent') |
|
|
|
|
->willReturn( |
|
|
|
|
'<?xml version="1.0"?><owncloud><version></version><versionstring></versionstring><url></url><web></web></owncloud>'
|
|
|
|
|
) |
|
|
|
|
; |
|
|
|
|
|
|
|
|
|
$updater = new Updater($httpHelper); |
|
|
|
|
// Invalidate cache |
|
|
|
|
\OC_Appconfig::setValue('core', 'lastupdatedat', 0); |
|
|
|
|
$result = $updater->check(); |
|
|
|
|
$this->assertContains('version', $result); |
|
|
|
|
$this->assertContains('versionstring', $result); |
|
|
|
|
$this->assertContains('url', $result); |
|
|
|
|
$this->assertContains('web', $result); |
|
|
|
|
$this->assertEmpty($result['version']); |
|
|
|
|
$this->assertEmpty($result['versionstring']); |
|
|
|
|
$this->assertEmpty($result['url']); |
|
|
|
|
$this->assertEmpty($result['web']); |
|
|
|
|
|
|
|
|
|
// Invalidate cache |
|
|
|
|
\OC_Appconfig::setValue('core', 'lastupdatedat', 0); |
|
|
|
|
$httpHelper->method('getUrlContent') |
|
|
|
|
->willReturn('') |
|
|
|
|
; |
|
|
|
|
|
|
|
|
|
$emptyResult = $updater->check(); |
|
|
|
|
$this->assertEmpty($emptyResult); |
|
|
|
|
|
|
|
|
|
// Invalidate cache |
|
|
|
|
\OC_Appconfig::setValue('core', 'lastupdatedat', 0); |
|
|
|
|
$httpHelper->method('getUrlContent') |
|
|
|
|
->willReturn('<?xml version="1.0"?> |
|
|
|
|
<owncloud> |
|
|
|
|
<version>7.0.3.4</version> |
|
|
|
|
<versionstring>ownCloud 7.0.3</versionstring> |
|
|
|
|
<url>http://download.owncloud.org/community/owncloud-7.0.3.zip</url> |
|
|
|
|
<web>http://owncloud.org/</web> |
|
|
|
|
</owncloud>') |
|
|
|
|
; |
|
|
|
|
|
|
|
|
|
$newResult = $updater->check(); |
|
|
|
|
$this->assertContains('version', $newResult); |
|
|
|
|
$this->assertContains('versionstring', $newResult); |
|
|
|
|
$this->assertContains('url', $newResult); |
|
|
|
|
$this->assertContains('web', $newResult); |
|
|
|
|
$this->assertEqual('7.0.3.4', $newResult['version']); |
|
|
|
|
$this->assertEqual('ownCloud 7.0.3', $newResult['versionstring']); |
|
|
|
|
$this->assertEqual('http://download.owncloud.org/community/owncloud-7.0.3.zip', $newResult['url']); |
|
|
|
|
$this->assertEqual('http://owncloud.org/', $newResult['web']); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |