]> source.dussan.org Git - nextcloud-server.git/commitdiff
Tests whether expired/valid link share is still accessible.
authorAndreas Fischer <bantu@owncloud.com>
Sat, 14 Sep 2013 15:56:55 +0000 (17:56 +0200)
committerAndreas Fischer <bantu@owncloud.com>
Wed, 9 Oct 2013 11:25:38 +0000 (13:25 +0200)
tests/lib/share/share.php

index e02b0e4354d1bda4c359895afe328439cf74d7d0..8e9eef65d320fad8bb5d8f4af1211f78c9ae0fb0 100644 (file)
@@ -535,4 +535,52 @@ class Test_Share extends PHPUnit_Framework_TestCase {
                        'Failed asserting that user 3 still has access to test.txt after expiration date has been set.'
                );
        }
+
+       protected function getShareByValidToken($token) {
+               $row = OCP\Share::getShareByToken($token);
+               $this->assertInternalType(
+                       'array',
+                       $row,
+                       "Failed asserting that a share for token $token exists."
+               );
+               return $row;
+       }
+
+       public function testShareItemWithLink() {
+               OC_User::setUserId($this->user1);
+               $token = OCP\Share::shareItem('test', 'test.txt', OCP\Share::SHARE_TYPE_LINK, null, OCP\PERMISSION_READ);
+               $this->assertInternalType(
+                       'string',
+                       $token,
+                       'Failed asserting that user 1 successfully shared text.txt as link with token.'
+               );
+
+               // testGetShareByTokenNoExpiration
+               $row = $this->getShareByValidToken($token);
+               $this->assertEmpty(
+                       $row['expiration'],
+                       'Failed asserting that the returned row does not have an expiration date.'
+               );
+
+               // testGetShareByTokenExpirationValid
+               $this->assertTrue(
+                       OCP\Share::setExpirationDate('test', 'test.txt', $this->dateInFuture),
+                       'Failed asserting that user 1 successfully set a future expiration date for the test.txt share.'
+               );
+               $row = $this->getShareByValidToken($token);
+               $this->assertNotEmpty(
+                       $row['expiration'],
+                       'Failed asserting that the returned row has an expiration date.'
+               );
+
+               // testGetShareByTokenExpirationExpired
+               $this->assertTrue(
+                       OCP\Share::setExpirationDate('test', 'test.txt', $this->dateInPast),
+                       'Failed asserting that user 1 successfully set a past expiration date for the test.txt share.'
+               );
+               $this->assertFalse(
+                       OCP\Share::getShareByToken($token),
+                       'Failed asserting that an expired share could not be found.'
+               );
+       }
 }