diff options
author | Daniel Calviño Sánchez <danxuliu@gmail.com> | 2020-11-12 09:35:34 +0100 |
---|---|---|
committer | backportbot[bot] <backportbot[bot]@users.noreply.github.com> | 2020-11-16 13:20:05 +0000 |
commit | 16b1b655cf283633128f290776105557d84d2e87 (patch) | |
tree | 287cca4f086032bd6725873a26915af3bdb2cdd8 | |
parent | 1aed47693716b8066081955de8d7d0e0fc6794a0 (diff) | |
download | nextcloud-server-16b1b655cf283633128f290776105557d84d2e87.tar.gz nextcloud-server-16b1b655cf283633128f290776105557d84d2e87.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>
-rw-r--r-- | tests/lib/Share20/ManagerTest.php | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/lib/Share20/ManagerTest.php b/tests/lib/Share20/ManagerTest.php index d76b76f8b0a..12b36af64d8 100644 --- a/tests/lib/Share20/ManagerTest.php +++ b/tests/lib/Share20/ManagerTest.php @@ -961,6 +961,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')); |