aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorDaniel Calviño Sánchez <danxuliu@gmail.com>2020-11-12 09:35:34 +0100
committerDaniel Calviño Sánchez <danxuliu@gmail.com>2020-11-12 11:57:34 +0100
commit578b57837ae5c64ae554a3d832df5e8743f640b6 (patch)
tree133b34e89d588621788eddd3c7c78b09823a3613 /tests
parent70018ddabf5214a1a90320a0bd4fb3273df7493d (diff)
downloadnextcloud-server-578b57837ae5c64ae554a3d832df5e8743f640b6.tar.gz
nextcloud-server-578b57837ae5c64ae554a3d832df5e8743f640b6.zip
Add unit test for expiration date with date and with default
This adds back what was being actually tested in the unit test fixed in the previous commit. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/Share20/ManagerTest.php28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/lib/Share20/ManagerTest.php b/tests/lib/Share20/ManagerTest.php
index 822b6a7360e..b152e80c146 100644
--- a/tests/lib/Share20/ManagerTest.php
+++ b/tests/lib/Share20/ManagerTest.php
@@ -964,6 +964,34 @@ class ManagerTest extends \Test\TestCase {
$this->assertEquals($expected, $share->getExpirationDate());
}
+ public function testValidateExpirationDateDefault() {
+ $future = new \DateTime();
+ $future->add(new \DateInterval('P5D'));
+ $future->setTime(0,0,0);
+
+ $expected = clone $future;
+
+ $share = $this->manager->newShare();
+ $share->setExpirationDate($future);
+
+ $this->config->method('getAppValue')
+ ->willReturnMap([
+ ['core', 'shareapi_default_expire_date', 'no', 'yes'],
+ ['core', 'shareapi_expire_after_n_days', '7', '3'],
+ ['core', 'link_defaultExpDays', 3, '1'],
+ ]);
+
+ $hookListener = $this->getMockBuilder('Dummy')->setMethods(['listener'])->getMock();
+ \OCP\Util::connectHook('\OC\Share', 'verifyExpirationDate', $hookListener, 'listener');
+ $hookListener->expects($this->once())->method('listener')->with($this->callback(function ($data) use ($expected) {
+ return $data['expirationDate'] == $expected;
+ }));
+
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+
+ $this->assertEquals($expected, $share->getExpirationDate());
+ }
+
public function testValidateExpirationDateHookModification() {
$nextWeek = new \DateTime();
$nextWeek->add(new \DateInterval('P7D'));