summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/updater.php60
1 files changed, 58 insertions, 2 deletions
diff --git a/tests/lib/updater.php b/tests/lib/updater.php
index 155dccf78a7..5a05bc09bb7 100644
--- a/tests/lib/updater.php
+++ b/tests/lib/updater.php
@@ -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']);
+ }
} \ No newline at end of file