From 553883a1f459a7ac97fc51d88244f3f215619b8f Mon Sep 17 00:00:00 2001 From: Vincent Petry Date: Tue, 6 Dec 2016 13:35:45 +0100 Subject: [PATCH] Add integration test for creating folder with colon Signed-off-by: Lukas Reschke --- build/integration/features/bootstrap/WebDav.php | 9 +++++++++ .../integration/features/webdav-related.feature | 16 ++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/build/integration/features/bootstrap/WebDav.php b/build/integration/features/bootstrap/WebDav.php index 8a34d90b84..0a08e764e3 100644 --- a/build/integration/features/bootstrap/WebDav.php +++ b/build/integration/features/bootstrap/WebDav.php @@ -31,6 +31,7 @@ use GuzzleHttp\Client as GClient; use GuzzleHttp\Message\ResponseInterface; use Sabre\DAV\Client as SClient; +use Sabre\DAV\Xml\Property\ResourceType; require __DIR__ . '/../../vendor/autoload.php'; @@ -328,6 +329,14 @@ trait WebDav { } $value = $keys[$key]; + if ($value instanceof ResourceType) { + $value = $value->getValue(); + if (empty($value)) { + $value = ''; + } else { + $value = $value[0]; + } + } if ($value != $expectedValue) { throw new \Exception("Property \"$key\" found with value \"$value\", expected \"$expectedValue\""); } diff --git a/build/integration/features/webdav-related.feature b/build/integration/features/webdav-related.feature index 658e689f54..b75fdd3561 100644 --- a/build/integration/features/webdav-related.feature +++ b/build/integration/features/webdav-related.feature @@ -447,3 +447,19 @@ Feature: webdav-related And As an "user1" When User "user1" deletes file "/testfolder/asdf.txt" Then the HTTP status code should be "204" + + Scenario: Creating a folder + Given using old dav path + And user "user0" exists + And user "user0" created a folder "/test_folder" + When as "user0" gets properties of folder "/test_folder" with + |{DAV:}resourcetype| + Then the single response should contain a property "{DAV:}resourcetype" with value "{DAV:}collection" + + Scenario: Creating a folder with special chars + Given using old dav path + And user "user0" exists + And user "user0" created a folder "/test_folder:5" + When as "user0" gets properties of folder "/test_folder:5" with + |{DAV:}resourcetype| + Then the single response should contain a property "{DAV:}resourcetype" with value "{DAV:}collection"