2013-02-25 11:38:00 +00:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Copyright (c) 2012 Bernhard Posselt <nukeawhale@gmail.com>
|
|
|
|
* This file is licensed under the Affero General Public License version 3 or
|
|
|
|
* later.
|
|
|
|
* See the COPYING-README file.
|
|
|
|
*/
|
|
|
|
|
|
|
|
class Test_App extends PHPUnit_Framework_TestCase {
|
|
|
|
|
|
|
|
|
|
|
|
public function testIsAppVersionCompatibleSingleOCNumber(){
|
|
|
|
$oc = array(4);
|
|
|
|
$app = '4.0';
|
|
|
|
|
|
|
|
$this->assertTrue(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function testIsAppVersionCompatibleMultipleOCNumber(){
|
|
|
|
$oc = array(4, 3, 1);
|
|
|
|
$app = '4.3';
|
|
|
|
|
|
|
|
$this->assertTrue(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2013-02-25 11:47:34 +00:00
|
|
|
public function testIsAppVersionCompatibleSingleNumber(){
|
2013-02-25 11:38:00 +00:00
|
|
|
$oc = array(4);
|
|
|
|
$app = '4';
|
|
|
|
|
|
|
|
$this->assertTrue(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function testIsAppVersionCompatibleSingleAppNumber(){
|
|
|
|
$oc = array(4, 3);
|
|
|
|
$app = '4';
|
|
|
|
|
|
|
|
$this->assertTrue(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
2013-02-25 22:06:26 +00:00
|
|
|
|
|
|
|
public function testIsAppVersionCompatibleComplex(){
|
|
|
|
$oc = array(5, 0, 0);
|
|
|
|
$app = '4.5.1';
|
|
|
|
|
|
|
|
$this->assertTrue(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
2013-02-25 11:38:00 +00:00
|
|
|
|
|
|
|
public function testIsAppVersionCompatibleShouldFail(){
|
|
|
|
$oc = array(4, 3, 1);
|
|
|
|
$app = '4.3.2';
|
|
|
|
|
|
|
|
$this->assertFalse(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
2013-02-25 11:47:34 +00:00
|
|
|
public function testIsAppVersionCompatibleShouldFailTwoVersionNumbers(){
|
|
|
|
$oc = array(4, 3, 1);
|
|
|
|
$app = '4.4';
|
|
|
|
|
|
|
|
$this->assertFalse(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2013-04-09 08:41:25 +00:00
|
|
|
public function testIsAppVersionCompatibleShouldWorkForPreAlpha(){
|
2013-04-09 08:47:02 +00:00
|
|
|
$oc = array(5, 0, 3);
|
2013-04-09 08:41:25 +00:00
|
|
|
$app = '4.93';
|
|
|
|
|
|
|
|
$this->assertTrue(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2013-02-25 11:47:34 +00:00
|
|
|
public function testIsAppVersionCompatibleShouldFailOneVersionNumbers(){
|
|
|
|
$oc = array(4, 3, 1);
|
|
|
|
$app = '5';
|
|
|
|
|
|
|
|
$this->assertFalse(OC_App::isAppVersionCompatible($oc, $app));
|
|
|
|
}
|
2013-02-25 11:38:00 +00:00
|
|
|
|
2013-12-16 16:22:44 +00:00
|
|
|
/**
|
|
|
|
* Tests that the app order is correct
|
|
|
|
*/
|
|
|
|
public function testGetEnabledAppsIsSorted() {
|
|
|
|
$apps = \OC_App::getEnabledApps(true);
|
|
|
|
// copy array
|
|
|
|
$sortedApps = $apps;
|
|
|
|
sort($sortedApps);
|
|
|
|
// 'files' is always on top
|
|
|
|
unset($sortedApps[array_search('files', $sortedApps)]);
|
|
|
|
array_unshift($sortedApps, 'files');
|
|
|
|
$this->assertEquals($sortedApps, $apps);
|
|
|
|
}
|
2013-08-18 09:02:08 +00:00
|
|
|
}
|