fix tests
calling getAbsoluteBundlePath() in the constructor makes other tests fail Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
This commit is contained in:
parent
33867f331c
commit
ee014bddbd
|
@ -26,6 +26,7 @@ namespace OCA\DAV\CardDAV;
|
|||
|
||||
use OC\Accounts\AccountManager;
|
||||
use OCP\AppFramework\Http;
|
||||
use OCP\ICertificateManager;
|
||||
use OCP\ILogger;
|
||||
use OCP\IUser;
|
||||
use OCP\IUserManager;
|
||||
|
@ -68,12 +69,7 @@ class SyncService {
|
|||
$this->userManager = $userManager;
|
||||
$this->logger = $logger;
|
||||
$this->accountManager = $accountManager;
|
||||
|
||||
$certManager = \OC::$server->getCertificateManager(null);
|
||||
$certPath = $certManager->getAbsoluteBundlePath();
|
||||
if (file_exists($certPath)) {
|
||||
$this->certPath = $certPath;
|
||||
}
|
||||
$this->certPath = '';
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -141,6 +137,28 @@ class SyncService {
|
|||
return $this->backend->getAddressBooksByUri($principal, $id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if there is a valid certPath we should use
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
protected function getCertPath() {
|
||||
|
||||
// we already have a valid certPath
|
||||
if ($this->certPath !== '') {
|
||||
return $this->certPath;
|
||||
}
|
||||
|
||||
/** @var ICertificateManager $certManager */
|
||||
$certManager = \OC::$server->getCertificateManager(null);
|
||||
$certPath = $certManager->getAbsoluteBundlePath();
|
||||
if (file_exists($certPath)) {
|
||||
$this->certPath = $certPath;
|
||||
}
|
||||
|
||||
return $this->certPath;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $url
|
||||
* @param string $userName
|
||||
|
@ -154,9 +172,10 @@ class SyncService {
|
|||
'password' => $sharedSecret,
|
||||
];
|
||||
$client = new Client($settings);
|
||||
$certPath = $this->getCertPath();
|
||||
$client->setThrowExceptions(true);
|
||||
|
||||
if (strpos($url, 'http://') !== 0 && $this->certPath) {
|
||||
if ($certPath !== '' && strpos($url, 'http://') !== 0) {
|
||||
$client->addCurlSetting(CURLOPT_CAINFO, $this->certPath);
|
||||
}
|
||||
|
||||
|
|
|
@ -179,7 +179,7 @@ class SyncServiceTest extends TestCase {
|
|||
$accountManager = $this->getMockBuilder('OC\Accounts\AccountManager')->disableOriginalConstructor()->getMock();
|
||||
/** @var SyncService | \PHPUnit_Framework_MockObject_MockObject $ss */
|
||||
$ss = $this->getMockBuilder(SyncService::class)
|
||||
->setMethods(['ensureSystemAddressBookExists', 'requestSyncReport', 'download'])
|
||||
->setMethods(['ensureSystemAddressBookExists', 'requestSyncReport', 'download', 'getCertPath'])
|
||||
->setConstructorArgs([$backend, $userManager, $logger, $accountManager])
|
||||
->getMock();
|
||||
$ss->method('requestSyncReport')->withAnyParameters()->willReturn(['response' => $response, 'token' => 'sync-token-1']);
|
||||
|
@ -189,6 +189,7 @@ class SyncServiceTest extends TestCase {
|
|||
'statusCode' => 200,
|
||||
'headers' => []
|
||||
]);
|
||||
$ss->method('getCertPath')->willReturn('');
|
||||
return $ss;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue