aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_sharing/tests
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_sharing/tests')
-rw-r--r--apps/files_sharing/tests/api.php99
-rw-r--r--apps/files_sharing/tests/base.php12
-rw-r--r--apps/files_sharing/tests/cache.php66
-rw-r--r--apps/files_sharing/tests/permissions.php15
-rw-r--r--apps/files_sharing/tests/updater.php55
-rw-r--r--apps/files_sharing/tests/watcher.php33
6 files changed, 181 insertions, 99 deletions
diff --git a/apps/files_sharing/tests/api.php b/apps/files_sharing/tests/api.php
index c7a848315ac..b2f05d10ac6 100644
--- a/apps/files_sharing/tests/api.php
+++ b/apps/files_sharing/tests/api.php
@@ -324,10 +324,10 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
$this->assertTrue(is_string($result));
$testValues=array(
- array('query' => 'Shared/' . $this->folder,
- 'expectedResult' => '/Shared' . $this->folder . $this->filename),
- array('query' => 'Shared/' . $this->folder . $this->subfolder,
- 'expectedResult' => '/Shared' . $this->folder . $this->subfolder . $this->filename),
+ array('query' => $this->folder,
+ 'expectedResult' => $this->folder . $this->filename),
+ array('query' => $this->folder . $this->subfolder,
+ 'expectedResult' => $this->folder . $this->subfolder . $this->filename),
);
foreach ($testValues as $value) {
@@ -382,7 +382,7 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
// share was successful?
$this->assertTrue(is_string($result));
- $_GET['path'] = '/Shared';
+ $_GET['path'] = '/';
$_GET['subfiles'] = 'true';
$result = Share\Api::getAllShares(array());
@@ -395,7 +395,7 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
// we should get exactly one result
$this->assertEquals(1, count($data));
- $expectedPath = '/Shared' . $this->subfolder;
+ $expectedPath = $this->subfolder;
$this->assertEquals($expectedPath, $data[0]['path']);
// cleanup
@@ -444,7 +444,7 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
$this->assertTrue(is_string($result));
- $_GET['path'] = '/Shared';
+ $_GET['path'] = '/';
$_GET['subfiles'] = 'true';
$result = Share\Api::getAllShares(array());
@@ -457,7 +457,7 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
// we should get exactly one result
$this->assertEquals(1, count($data));
- $expectedPath = '/Shared' . $this->subsubfolder;
+ $expectedPath = $this->subsubfolder;
$this->assertEquals($expectedPath, $data[0]['path']);
@@ -512,8 +512,8 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
$this->assertTrue(is_string($result));
- // ask for shared/subfolder
- $expectedPath1 = '/Shared' . $this->subfolder;
+ // ask for subfolder
+ $expectedPath1 = $this->subfolder;
$_GET['path'] = $expectedPath1;
$result1 = Share\Api::getAllShares(array());
@@ -524,8 +524,8 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
$data1 = $result1->getData();
$share1 = reset($data1);
- // ask for shared/folder/subfolder
- $expectedPath2 = '/Shared' . $this->folder . $this->subfolder;
+ // ask for folder/subfolder
+ $expectedPath2 = $this->folder . $this->subfolder;
$_GET['path'] = $expectedPath2;
$result2 = Share\Api::getAllShares(array());
@@ -595,7 +595,7 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
$this->assertTrue(is_string($result));
- $_GET['path'] = '/Shared';
+ $_GET['path'] = '/';
$_GET['subfiles'] = 'true';
$result = Share\Api::getAllShares(array());
@@ -608,7 +608,7 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
// we should get exactly one result
$this->assertEquals(1, count($data));
- $expectedPath = '/Shared' . $this->filename;
+ $expectedPath = $this->filename;
$this->assertEquals($expectedPath, $data[0]['path']);
@@ -866,16 +866,66 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
$this->assertTrue($result3->succeeded());
+ // cleanup
+ \Test_Files_Sharing_Api::loginHelper(\Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER1);
+
+ $result = \OCP\Share::unshare('folder', $fileInfo1['fileid'], \OCP\Share::SHARE_TYPE_USER,
+ \Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER2);
+
+ $this->assertTrue($result);
+
+
+
}
- function testCorrectPath() {
- $path = "/foo/bar/test.txt";
- $folder = "/correct/path";
- $expectedResult = "/correct/path/test.txt";
+ /**
+ * @brief share a folder which contains a share mount point, should be forbidden
+ */
+ public function testShareFolderWithAMountPoint() {
+ // user 1 shares a folder with user2
+ \Test_Files_Sharing_Api::loginHelper(\Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER1);
+
+ $fileInfo = $this->view->getFileInfo($this->folder);
+
+ $result = \OCP\Share::shareItem('folder', $fileInfo['fileid'], \OCP\Share::SHARE_TYPE_USER,
+ \Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER2, 31);
+
+ $this->assertTrue($result);
+
+ // user2 shares a file from the folder as link
+ \Test_Files_Sharing_Api::loginHelper(\Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER2);
+
+ $view = new \OC\Files\View('/' . \Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER2 . '/files');
+ $view->mkdir("localDir");
+
+ // move mount point to the folder "localDir"
+ $result = $view->rename($this->folder, 'localDir/'.$this->folder);
+ $this->assertTrue($result !== false);
+
+ // try to share "localDir"
+ $fileInfo2 = $view->getFileInfo('localDir');
+
+ $this->assertTrue($fileInfo2 instanceof \OC\Files\FileInfo);
+
+ try {
+ $result2 = \OCP\Share::shareItem('folder', $fileInfo2['fileid'], \OCP\Share::SHARE_TYPE_USER,
+ \Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER3, 31);
+ } catch (\Exception $e) {
+ $result2 = false;
+ }
- $shareApiDummy = new TestShareApi();
+ $this->assertFalse($result2);
- $this->assertSame($expectedResult, $shareApiDummy->correctPathTest($path, $folder));
+ //cleanup
+
+ $result = $view->rename('localDir/' . $this->folder, $this->folder);
+ $this->assertTrue($result !== false);
+ $view->unlink('localDir');
+
+ \Test_Files_Sharing_Api::loginHelper(\Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER1);
+
+ \OCP\Share::unshare('folder', $fileInfo['fileid'], \OCP\Share::SHARE_TYPE_USER,
+ \Test_Files_Sharing_Api::TEST_FILES_SHARING_API_USER2);
}
/**
@@ -902,12 +952,3 @@ class Test_Files_Sharing_Api extends Test_Files_Sharing_Base {
}
}
-
-/**
- * @brief dumnmy class to test protected methods
- */
-class TestShareApi extends \OCA\Files\Share\Api {
- public function correctPathTest($path, $folder) {
- return self::correctPath($path, $folder);
- }
-}
diff --git a/apps/files_sharing/tests/base.php b/apps/files_sharing/tests/base.php
index d44972d01f1..495dca072c7 100644
--- a/apps/files_sharing/tests/base.php
+++ b/apps/files_sharing/tests/base.php
@@ -102,22 +102,20 @@ abstract class Test_Files_Sharing_Base extends \PHPUnit_Framework_TestCase {
* @param bool $password
*/
protected static function loginHelper($user, $create = false, $password = false) {
- if ($create) {
- \OC_User::createUser($user, $user);
- }
if ($password === false) {
$password = $user;
}
+ if ($create) {
+ \OC_User::createUser($user, $password);
+ }
+
\OC_Util::tearDownFS();
\OC_User::setUserId('');
\OC\Files\Filesystem::tearDown();
- \OC_Util::setupFS($user);
\OC_User::setUserId($user);
-
- $params['uid'] = $user;
- $params['password'] = $password;
+ \OC_Util::setupFS($user);
}
/**
diff --git a/apps/files_sharing/tests/cache.php b/apps/files_sharing/tests/cache.php
index 47969833ab5..1af73c558d5 100644
--- a/apps/files_sharing/tests/cache.php
+++ b/apps/files_sharing/tests/cache.php
@@ -68,7 +68,7 @@ class Test_Files_Sharing_Cache extends Test_Files_Sharing_Base {
// retrieve the shared storage
$secondView = new \OC\Files\View('/' . self::TEST_FILES_SHARING_API_USER2);
- list($this->sharedStorage, $internalPath) = $secondView->resolvePath('files/Shared/shareddir');
+ list($this->sharedStorage, $internalPath) = $secondView->resolvePath('files/shareddir');
$this->sharedCache = $this->sharedStorage->getCache();
}
@@ -99,45 +99,45 @@ class Test_Files_Sharing_Cache extends Test_Files_Sharing_Base {
$results = $this->sharedStorage->getCache()->searchByMime('text');
$check = array(
array(
- 'name' => 'shared single file.txt',
- 'path' => 'shared single file.txt'
- ),
- array(
'name' => 'bar.txt',
- 'path' => 'shareddir/bar.txt'
+ 'path' => 'bar.txt'
),
array(
'name' => 'another too.txt',
- 'path' => 'shareddir/subdir/another too.txt'
+ 'path' => 'subdir/another too.txt'
),
array(
'name' => 'another.txt',
- 'path' => 'shareddir/subdir/another.txt'
+ 'path' => 'subdir/another.txt'
),
);
$this->verifyFiles($check, $results);
- $results2 = $this->sharedStorage->getCache()->searchByMime('text/plain');
-
$this->verifyFiles($check, $results);
}
function testGetFolderContentsInRoot() {
- $results = $this->user2View->getDirectoryContent('/Shared/');
+ $results = $this->user2View->getDirectoryContent('/');
+ // we should get the shared items "shareddir" and "shared single file.txt"
+ // additional root will always contain the example file "welcome.txt",
+ // so this will be part of the result
$this->verifyFiles(
array(
array(
+ 'name' => 'welcome.txt',
+ 'path' => 'files/welcome.txt',
+ 'mimetype' => 'text/plain',
+ ),
+ array(
'name' => 'shareddir',
- 'path' => '/shareddir',
+ 'path' => 'files/shareddir',
'mimetype' => 'httpd/unix-directory',
- 'usersPath' => 'files/Shared/shareddir'
),
array(
'name' => 'shared single file.txt',
- 'path' => '/shared single file.txt',
+ 'path' => 'files/shared single file.txt',
'mimetype' => 'text/plain',
- 'usersPath' => 'files/Shared/shared single file.txt'
),
),
$results
@@ -145,27 +145,24 @@ class Test_Files_Sharing_Cache extends Test_Files_Sharing_Base {
}
function testGetFolderContentsInSubdir() {
- $results = $this->user2View->getDirectoryContent('/Shared/shareddir');
+ $results = $this->user2View->getDirectoryContent('/shareddir');
$this->verifyFiles(
array(
array(
'name' => 'bar.txt',
- 'path' => 'files/container/shareddir/bar.txt',
+ 'path' => 'bar.txt',
'mimetype' => 'text/plain',
- 'usersPath' => 'files/Shared/shareddir/bar.txt'
),
array(
'name' => 'emptydir',
- 'path' => 'files/container/shareddir/emptydir',
+ 'path' => 'emptydir',
'mimetype' => 'httpd/unix-directory',
- 'usersPath' => 'files/Shared/shareddir/emptydir'
),
array(
'name' => 'subdir',
- 'path' => 'files/container/shareddir/subdir',
+ 'path' => 'subdir',
'mimetype' => 'httpd/unix-directory',
- 'usersPath' => 'files/Shared/shareddir/subdir'
),
),
$results
@@ -182,27 +179,24 @@ class Test_Files_Sharing_Cache extends Test_Files_Sharing_Base {
self::loginHelper(self::TEST_FILES_SHARING_API_USER3);
$thirdView = new \OC\Files\View('/' . self::TEST_FILES_SHARING_API_USER3 . '/files');
- $results = $thirdView->getDirectoryContent('/Shared/subdir');
+ $results = $thirdView->getDirectoryContent('/subdir');
$this->verifyFiles(
array(
array(
'name' => 'another too.txt',
- 'path' => 'files/container/shareddir/subdir/another too.txt',
+ 'path' => 'another too.txt',
'mimetype' => 'text/plain',
- 'usersPath' => 'files/Shared/subdir/another too.txt'
),
array(
'name' => 'another.txt',
- 'path' => 'files/container/shareddir/subdir/another.txt',
+ 'path' => 'another.txt',
'mimetype' => 'text/plain',
- 'usersPath' => 'files/Shared/subdir/another.txt'
),
array(
'name' => 'not a text file.xml',
- 'path' => 'files/container/shareddir/subdir/not a text file.xml',
+ 'path' => 'not a text file.xml',
'mimetype' => 'application/xml',
- 'usersPath' => 'files/Shared/subdir/not a text file.xml'
),
),
$results
@@ -254,14 +248,14 @@ class Test_Files_Sharing_Cache extends Test_Files_Sharing_Base {
\OC_Util::tearDownFS();
self::loginHelper(self::TEST_FILES_SHARING_API_USER2);
- $this->assertTrue(\OC\Files\Filesystem::file_exists('/Shared/test.txt'));
- list($sharedStorage) = \OC\Files\Filesystem::resolvePath('/' . self::TEST_FILES_SHARING_API_USER2 . '/files/Shared/test.txt');
+ $this->assertTrue(\OC\Files\Filesystem::file_exists('/test.txt'));
+ list($sharedStorage) = \OC\Files\Filesystem::resolvePath('/' . self::TEST_FILES_SHARING_API_USER2 . '/files/test.txt');
/**
* @var \OC\Files\Storage\Shared $sharedStorage
*/
$sharedCache = $sharedStorage->getCache();
- $this->assertEquals('test.txt', $sharedCache->getPathById($info->getId()));
+ $this->assertEquals('', $sharedCache->getPathById($info->getId()));
}
public function testGetPathByIdShareSubFolder() {
@@ -275,14 +269,14 @@ class Test_Files_Sharing_Cache extends Test_Files_Sharing_Base {
\OC_Util::tearDownFS();
self::loginHelper(self::TEST_FILES_SHARING_API_USER2);
- $this->assertTrue(\OC\Files\Filesystem::file_exists('/Shared/foo'));
- list($sharedStorage) = \OC\Files\Filesystem::resolvePath('/' . self::TEST_FILES_SHARING_API_USER2 . '/files/Shared/foo');
+ $this->assertTrue(\OC\Files\Filesystem::file_exists('/foo'));
+ list($sharedStorage) = \OC\Files\Filesystem::resolvePath('/' . self::TEST_FILES_SHARING_API_USER2 . '/files/foo');
/**
* @var \OC\Files\Storage\Shared $sharedStorage
*/
$sharedCache = $sharedStorage->getCache();
- $this->assertEquals('foo', $sharedCache->getPathById($folderInfo->getId()));
- $this->assertEquals('foo/bar/test.txt', $sharedCache->getPathById($fileInfo->getId()));
+ $this->assertEquals('', $sharedCache->getPathById($folderInfo->getId()));
+ $this->assertEquals('bar/test.txt', $sharedCache->getPathById($fileInfo->getId()));
}
}
diff --git a/apps/files_sharing/tests/permissions.php b/apps/files_sharing/tests/permissions.php
index e301d384a49..5ac251b0527 100644
--- a/apps/files_sharing/tests/permissions.php
+++ b/apps/files_sharing/tests/permissions.php
@@ -23,6 +23,9 @@ require_once __DIR__ . '/base.php';
class Test_Files_Sharing_Permissions extends Test_Files_Sharing_Base {
+ private $sharedStorageRestrictedShare;
+ private $sharedCacheRestrictedShare;
+
function setUp() {
parent::setUp();
@@ -55,8 +58,10 @@ class Test_Files_Sharing_Permissions extends Test_Files_Sharing_Base {
// retrieve the shared storage
$this->secondView = new \OC\Files\View('/' . self::TEST_FILES_SHARING_API_USER2);
- list($this->sharedStorage, $internalPath) = $this->secondView->resolvePath('files/Shared/shareddir');
+ list($this->sharedStorage, $internalPath) = $this->secondView->resolvePath('files/shareddir');
+ list($this->sharedStorageRestrictedShare, $internalPath) = $this->secondView->resolvePath('files/shareddirrestricted');
$this->sharedCache = $this->sharedStorage->getCache();
+ $this->sharedCacheRestrictedShare = $this->sharedStorageRestrictedShare->getCache();
}
function tearDown() {
@@ -86,9 +91,9 @@ class Test_Files_Sharing_Permissions extends Test_Files_Sharing_Base {
$this->assertEquals(31, $sharedDirPerms);
$sharedDirPerms = $this->sharedStorage->getPermissions('shareddir/textfile.txt');
$this->assertEquals(31, $sharedDirPerms);
- $sharedDirRestrictedPerms = $this->sharedStorage->getPermissions('shareddirrestricted');
+ $sharedDirRestrictedPerms = $this->sharedStorageRestrictedShare->getPermissions('shareddirrestricted');
$this->assertEquals(7, $sharedDirRestrictedPerms);
- $sharedDirRestrictedPerms = $this->sharedStorage->getPermissions('shareddirrestricted/textfile.txt');
+ $sharedDirRestrictedPerms = $this->sharedStorageRestrictedShare->getPermissions('shareddirrestricted/textfile.txt');
$this->assertEquals(7, $sharedDirRestrictedPerms);
}
@@ -96,12 +101,12 @@ class Test_Files_Sharing_Permissions extends Test_Files_Sharing_Base {
* Test that the permissions of shared directory are returned correctly
*/
function testGetDirectoryPermissions() {
- $contents = $this->secondView->getDirectoryContent('files/Shared/shareddir');
+ $contents = $this->secondView->getDirectoryContent('files/shareddir');
$this->assertEquals('subdir', $contents[0]['name']);
$this->assertEquals(31, $contents[0]['permissions']);
$this->assertEquals('textfile.txt', $contents[1]['name']);
$this->assertEquals(31, $contents[1]['permissions']);
- $contents = $this->secondView->getDirectoryContent('files/Shared/shareddirrestricted');
+ $contents = $this->secondView->getDirectoryContent('files/shareddirrestricted');
$this->assertEquals('subdir', $contents[0]['name']);
$this->assertEquals(7, $contents[0]['permissions']);
$this->assertEquals('textfile1.txt', $contents[1]['name']);
diff --git a/apps/files_sharing/tests/updater.php b/apps/files_sharing/tests/updater.php
index 79ae4879b64..3427cfe388c 100644
--- a/apps/files_sharing/tests/updater.php
+++ b/apps/files_sharing/tests/updater.php
@@ -20,6 +20,8 @@
*
*/
+require_once __DIR__ . '/../appinfo/update.php';
+
/**
* Class Test_Files_Sharing_Updater
*/
@@ -88,4 +90,57 @@ class Test_Files_Sharing_Updater extends \PHPUnit_Framework_TestCase {
$result = $countItems->execute()->fetchOne();
$this->assertEquals(2, $result);
}
+
+ /**
+ * test update for the removal of the logical "Shared" folder. It should update
+ * the file_target for every share and create a physical "Shared" folder for each user
+ */
+ function testRemoveSharedFolder() {
+ self::prepareDB();
+ // run the update routine to remove the shared folder and replace it with a real folder
+ removeSharedFolder(false, 2);
+
+ // verify results
+ $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share`');
+ $result = $query->execute(array());
+
+ $newDBContent = $result->fetchAll();
+
+ foreach ($newDBContent as $row) {
+ if ((int)$row['share_type'] === \OCP\Share::SHARE_TYPE_USER) {
+ $this->assertSame('/Shared', substr($row['file_target'], 0, strlen('/Shared')));
+ } else {
+ $this->assertSame('/ShouldNotChange', $row['file_target']);
+ }
+ }
+
+ $this->cleanupSharedTable();
+
+ }
+
+ private function cleanupSharedTable() {
+ $query = \OC_DB::prepare('DELETE FROM `*PREFIX*share`');
+ $query->execute();
+ }
+
+ private function prepareDB() {
+ $this->cleanupSharedTable();
+ // add items except one - because this is the test case for the broken share table
+ $addItems = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`share_type`, `item_type`, ' .
+ '`share_with`, `uid_owner` , `file_target`) ' .
+ 'VALUES (?, ?, ?, ?, ?)');
+ $items = array(
+ array(\OCP\Share::SHARE_TYPE_USER, 'file', 'user1', 'admin' , '/foo'),
+ array(\OCP\Share::SHARE_TYPE_USER, 'folder', 'user2', 'admin', '/foo2'),
+ array(\OCP\Share::SHARE_TYPE_USER, 'file', 'user3', 'admin', '/foo3'),
+ array(\OCP\Share::SHARE_TYPE_USER, 'folder', 'user4', 'admin', '/foo4'),
+ array(\OCP\Share::SHARE_TYPE_LINK, 'file', 'user1', 'admin', '/ShouldNotChange'),
+ array(\OCP\Share::SHARE_TYPE_CONTACT, 'contact', 'admin', 'user1', '/ShouldNotChange'),
+
+ );
+ foreach($items as $item) {
+ // the number is used as path_hash
+ $addItems->execute($item);
+ }
+ }
}
diff --git a/apps/files_sharing/tests/watcher.php b/apps/files_sharing/tests/watcher.php
index 5ab716e829f..bce93c80a6c 100644
--- a/apps/files_sharing/tests/watcher.php
+++ b/apps/files_sharing/tests/watcher.php
@@ -48,7 +48,7 @@ class Test_Files_Sharing_Watcher extends Test_Files_Sharing_Base {
// retrieve the shared storage
$secondView = new \OC\Files\View('/' . self::TEST_FILES_SHARING_API_USER2);
- list($this->sharedStorage, $internalPath) = $secondView->resolvePath('files/Shared/shareddir');
+ list($this->sharedStorage, $internalPath) = $secondView->resolvePath('files/shareddir');
$this->sharedCache = $this->sharedStorage->getCache();
}
@@ -77,12 +77,12 @@ class Test_Files_Sharing_Watcher extends Test_Files_Sharing_Base {
$textData = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$dataLen = strlen($textData);
- $this->sharedCache->put('shareddir/bar.txt', array('storage_mtime' => 10));
- $this->sharedStorage->file_put_contents('shareddir/bar.txt', $textData);
- $this->sharedCache->put('shareddir', array('storage_mtime' => 10));
+ $this->sharedCache->put('bar.txt', array('mtime' => 10, 'storage_mtime' => 10, 'size' => $dataLen, 'mimetype' => 'text/plain'));
+ $this->sharedStorage->file_put_contents('bar.txt', $textData);
+ $this->sharedCache->put('', array('mtime' => 10, 'storage_mtime' => 10, 'size' => '-1', 'mimetype' => 'httpd/unix-directory'));
// run the propagation code
- $result = $this->sharedStorage->getWatcher()->checkUpdate('shareddir');
+ $result = $this->sharedStorage->getWatcher()->checkUpdate('');
$this->assertTrue($result);
@@ -94,7 +94,7 @@ class Test_Files_Sharing_Watcher extends Test_Files_Sharing_Base {
$this->assertEquals($initialSizes['files/container/shareddir'] + $dataLen, $newSizes['files/container/shareddir']);
// no more updates
- $result = $this->sharedStorage->getWatcher()->checkUpdate('shareddir');
+ $result = $this->sharedStorage->getWatcher()->checkUpdate('');
$this->assertFalse($result);
}
@@ -108,12 +108,12 @@ class Test_Files_Sharing_Watcher extends Test_Files_Sharing_Base {
$textData = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$dataLen = strlen($textData);
- $this->sharedCache->put('shareddir/subdir/bar.txt', array('storage_mtime' => 10));
- $this->sharedStorage->file_put_contents('shareddir/subdir/bar.txt', $textData);
- $this->sharedCache->put('shareddir/subdir', array('storage_mtime' => 10));
+ $this->sharedCache->put('subdir/bar.txt', array('mtime' => 10, 'storage_mtime' => 10, 'size' => $dataLen, 'mimetype' => 'text/plain'));
+ $this->sharedStorage->file_put_contents('subdir/bar.txt', $textData);
+ $this->sharedCache->put('subdir', array('mtime' => 10, 'storage_mtime' => 10, 'size' => $dataLen, 'mimetype' => 'text/plain'));
// run the propagation code
- $result = $this->sharedStorage->getWatcher()->checkUpdate('shareddir/subdir');
+ $result = $this->sharedStorage->getWatcher()->checkUpdate('subdir');
$this->assertTrue($result);
@@ -126,20 +126,9 @@ class Test_Files_Sharing_Watcher extends Test_Files_Sharing_Base {
$this->assertEquals($initialSizes['files/container/shareddir/subdir'] + $dataLen, $newSizes['files/container/shareddir/subdir']);
// no more updates
- $result = $this->sharedStorage->getWatcher()->checkUpdate('shareddir/subdir');
-
- $this->assertFalse($result);
- }
-
- function testNoUpdateOnRoot() {
- // no updates when called for root path
- $result = $this->sharedStorage->getWatcher()->checkUpdate('');
+ $result = $this->sharedStorage->getWatcher()->checkUpdate('subdir');
$this->assertFalse($result);
-
- // FIXME: for some reason when running this "naked" test,
- // there will be remaining nonsensical entries in the
- // database with a path "test-share-user1/container/..."
}
/**