summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@owncloud.com>2016-05-11 14:01:05 +0200
committerRoeland Jago Douma <rullzer@owncloud.com>2016-05-11 14:07:37 +0200
commit8bfa532075a1d755ed9e3031286b6f255d0abed2 (patch)
tree495f931c3af7e5d07e362287f0bec6ab1aa2e380
parentf39e163d4a6ee63444bfb6a797e12a482bd0a49f (diff)
downloadnextcloud-server-8bfa532075a1d755ed9e3031286b6f255d0abed2.tar.gz
nextcloud-server-8bfa532075a1d755ed9e3031286b6f255d0abed2.zip
Fix test race condition
E-tag propagation replies on the mtime of the file. Order of events: 1. add file 'foo.txt' with content 'bar' 2. Set mtime to now() - 1 3. Check if etag changed. Now this goes right often when 1 and 2 happen in the same second. However imagine 1. add file 'foo.txt' with content 'bar' (at t=0.999) 2. Set mtime to now() - 1 (at t=1.001) Now the mtime will be set to the same time. Thus not chaning the etag.
-rw-r--r--apps/files_sharing/tests/etagpropagation.php3
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/files_sharing/tests/etagpropagation.php b/apps/files_sharing/tests/etagpropagation.php
index 2f3604e63cd..e7d5bb46258 100644
--- a/apps/files_sharing/tests/etagpropagation.php
+++ b/apps/files_sharing/tests/etagpropagation.php
@@ -192,7 +192,8 @@ class EtagPropagation extends PropagationTestCase {
public function testOwnerWritesToSingleFileShare() {
$this->loginAsUser(self::TEST_FILES_SHARING_API_USER1);
Filesystem::file_put_contents('/foo.txt', 'longer_bar');
- Filesystem::touch('/foo.txt', time() - 1);
+ $t = (int)Filesystem::filemtime('/foo.txt') - 1;
+ Filesystem::touch('/foo.txt', $t);
$this->assertEtagsNotChanged([self::TEST_FILES_SHARING_API_USER4, self::TEST_FILES_SHARING_API_USER3]);
$this->assertEtagsChanged([self::TEST_FILES_SHARING_API_USER1, self::TEST_FILES_SHARING_API_USER2]);