summaryrefslogtreecommitdiff
path: root/_test
diff options
context:
space:
mode:
authorAndreas Gohr <andi@splitbrain.org>2013-07-30 10:15:57 +0200
committerAndreas Gohr <andi@splitbrain.org>2013-07-30 10:15:57 +0200
commit5f0edceddab88f91bec7fecf5efa606bbe273fb2 (patch)
treea5bc430a6e101353aa98bc549216a999487070a9 /_test
parent7d8a6abbb21979fd77dca10275ebb8e01a04b6e4 (diff)
downloadrpg-5f0edceddab88f91bec7fecf5efa606bbe273fb2.tar.gz
rpg-5f0edceddab88f91bec7fecf5efa606bbe273fb2.tar.bz2
added test case for FS#1442
Diffstat (limited to '_test')
-rw-r--r--_test/tests/inc/tar.test.php24
1 files changed, 23 insertions, 1 deletions
diff --git a/_test/tests/inc/tar.test.php b/_test/tests/inc/tar.test.php
index 90bc2e49e..28e709cc3 100644
--- a/_test/tests/inc/tar.test.php
+++ b/_test/tests/inc/tar.test.php
@@ -248,6 +248,28 @@ class Tar_TestCase extends DokuWikiTest {
}
}
+ // FS#1442
+ public function test_createlongfile() {
+ $tar = new Tar();
+ $tmp = tempnam(sys_get_temp_dir(), 'dwtartest');
+
+ $path = '0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789.txt';
+
+ $tar->create($tmp, Tar::COMPRESS_NONE);
+ $tar->addData($path, 'testcontent1');
+ $tar->close();
+
+ $this->assertTrue(filesize($tmp) > 30); //arbitrary non-zero number
+ $data = file_get_contents($tmp);
+
+ // We should find the complete path and a longlink entry
+ $this->assertTrue(strpos($data, 'testcontent1') !== false, 'content in TAR');
+ $this->assertTrue(strpos($data, $path) !== false, 'path in TAR');
+ $this->assertTrue(strpos($data, '@LongLink') !== false, '@LongLink in TAR');
+
+ @unlink($tmp);
+ }
+
public function test_createlongpathustar() {
$tar = new Tar();
$tmp = tempnam(sys_get_temp_dir(), 'dwtartest');
@@ -360,4 +382,4 @@ class Tar_TestCase extends DokuWikiTest {
$this->assertEquals(512*4, strlen($file)); // 1 header block + data block + 2 footer blocks
}
-} \ No newline at end of file
+}