summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlivier Paroz <github@oparoz.com>2015-03-19 15:35:36 +0100
committerOlivier Paroz <github@oparoz.com>2015-03-19 16:09:16 +0100
commitf890c3ffb1b7f7f1b744b37426993010e0c39138 (patch)
tree72848f7dccca74976ac480a223cf076f4ad3a4cc
parent60b1643f02a2588d90fa77346bc377f5c1db8fbe (diff)
downloadnextcloud-server-f890c3ffb1b7f7f1b744b37426993010e0c39138.tar.gz
nextcloud-server-f890c3ffb1b7f7f1b744b37426993010e0c39138.zip
Make the method compatible with all types of extensions
Fix existing tests
-rw-r--r--lib/private/tempmanager.php5
-rw-r--r--tests/lib/tempmanager.php12
2 files changed, 10 insertions, 7 deletions
diff --git a/lib/private/tempmanager.php b/lib/private/tempmanager.php
index 213d57b2e28..fa23749b708 100644
--- a/lib/private/tempmanager.php
+++ b/lib/private/tempmanager.php
@@ -42,7 +42,10 @@ class TempManager implements ITempManager {
}
protected function generatePath($postFix) {
- return $this->tmpBaseDir . '/oc_tmp_' . md5(time() . rand()) . '.' . $postFix;
+ if ($postFix) {
+ $postFix = '.' . ltrim($postFix, '.');
+ }
+ return $this->tmpBaseDir . '/oc_tmp_' . md5(time() . rand()) . $postFix;
}
/**
diff --git a/tests/lib/tempmanager.php b/tests/lib/tempmanager.php
index c030eef2c9e..427e260c3fb 100644
--- a/tests/lib/tempmanager.php
+++ b/tests/lib/tempmanager.php
@@ -51,7 +51,7 @@ class TempManager extends \Test\TestCase {
public function testGetFile() {
$manager = $this->getManager();
- $file = $manager->getTemporaryFile('.txt');
+ $file = $manager->getTemporaryFile('txt');
$this->assertStringEndsWith('.txt', $file);
$this->assertTrue(is_file($file));
$this->assertTrue(is_writable($file));
@@ -73,8 +73,8 @@ class TempManager extends \Test\TestCase {
public function testCleanFiles() {
$manager = $this->getManager();
- $file1 = $manager->getTemporaryFile('.txt');
- $file2 = $manager->getTemporaryFile('.txt');
+ $file1 = $manager->getTemporaryFile('txt');
+ $file2 = $manager->getTemporaryFile('txt');
$this->assertTrue(file_exists($file1));
$this->assertTrue(file_exists($file2));
@@ -105,8 +105,8 @@ class TempManager extends \Test\TestCase {
public function testCleanOld() {
$manager = $this->getManager();
- $oldFile = $manager->getTemporaryFile('.txt');
- $newFile = $manager->getTemporaryFile('.txt');
+ $oldFile = $manager->getTemporaryFile('txt');
+ $newFile = $manager->getTemporaryFile('txt');
$folder = $manager->getTemporaryFolder();
$nonOcFile = $this->baseDir . '/foo.txt';
file_put_contents($nonOcFile, 'bar');
@@ -135,7 +135,7 @@ class TempManager extends \Test\TestCase {
$logger->expects($this->once())
->method('warning')
->with($this->stringContains('Can not create a temporary file in directory'));
- $this->assertFalse($manager->getTemporaryFile('.txt'));
+ $this->assertFalse($manager->getTemporaryFile('txt'));
}
public function testLogCantCreateFolder() {