Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/files/mapper.php4
-rw-r--r--tests/lib/files/mapper.php11
2 files changed, 13 insertions, 2 deletions
diff --git a/lib/files/mapper.php b/lib/files/mapper.php
index 2b6890472e3..15f5f0628b5 100644
--- a/lib/files/mapper.php
+++ b/lib/files/mapper.php
@@ -191,8 +191,8 @@ class Mapper
// apply index to file name
if ($index !== null) {
- array_pop($sluggedElements);
- array_push($sluggedElements, $filename.'-'.$index);
+ $last= array_pop($sluggedElements);
+ array_push($sluggedElements, $last.'-'.$index);
}
// add back the extension
diff --git a/tests/lib/files/mapper.php b/tests/lib/files/mapper.php
index 36221f8bcaa..79005eefdcb 100644
--- a/tests/lib/files/mapper.php
+++ b/tests/lib/files/mapper.php
@@ -34,8 +34,19 @@ class Mapper extends \PHPUnit_Framework_TestCase {
}
public function testSlugifyPath() {
+ // with extension
$this->assertEquals('D:/text.txt', $this->mapper->slugifyPath('D:/text.txt'));
$this->assertEquals('D:/text-2.txt', $this->mapper->slugifyPath('D:/text.txt', 2));
$this->assertEquals('D:/a/b/text.txt', $this->mapper->slugifyPath('D:/a/b/text.txt'));
+
+ // without extension
+ $this->assertEquals('D:/text', $this->mapper->slugifyPath('D:/text'));
+ $this->assertEquals('D:/text-2', $this->mapper->slugifyPath('D:/text', 2));
+ $this->assertEquals('D:/a/b/text', $this->mapper->slugifyPath('D:/a/b/text'));
+
+ // with double dot
+ $this->assertEquals('D:/text-text.txt', $this->mapper->slugifyPath('D:/text.text.txt'));
+ $this->assertEquals('D:/text-text-2.txt', $this->mapper->slugifyPath('D:/text.text.txt', 2));
+ $this->assertEquals('D:/a/b/text-text.txt', $this->mapper->slugifyPath('D:/a/b/text.text.txt'));
}
}