Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
authorThomas Müller <thomas.mueller@tmit.eu>2017-08-10 13:14:02 +0300
committerDaniel Calviño Sánchez <danxuliu@gmail.com>2017-12-15 16:46:44 +0300
commit74df27b7a756d948e6df94cda3fda9585ae78f7c (patch)
treeba87d3e060b1507faad73f6a0ad51daa38463b33 /build
parent8c5d656f3b605a8cedbf412b7498b936e12866e6 (diff)
Add integration tests for length header on new chunking
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Diffstat (limited to 'build')
-rw-r--r--build/integration/features/bootstrap/WebDav.php17
-rw-r--r--build/integration/features/webdav-related.feature20
2 files changed, 37 insertions, 0 deletions
diff --git a/build/integration/features/bootstrap/WebDav.php b/build/integration/features/bootstrap/WebDav.php
index 5d6ca0633b6..1354c0b1978 100644
--- a/build/integration/features/bootstrap/WebDav.php
+++ b/build/integration/features/bootstrap/WebDav.php
@@ -595,6 +595,23 @@ trait WebDav {
], null, "uploads");
}
+ /**
+ * @Then user :user moves new chunk file with id :id to :dest with size :size
+ */
+ public function userMovesNewChunkFileWithIdToMychunkedfileWithSize($user, $id, $dest, $size)
+ {
+ $source = '/uploads/' . $user . '/' . $id . '/.file';
+ $destination = substr($this->baseUrl, 0, -4) . $this->getDavFilesPath($user) . $dest;
+
+ try {
+ $this->response = $this->makeDavRequest($user, 'MOVE', $source, [
+ 'Destination' => $destination,
+ 'OC-Total-Length' => $size
+ ], null, "uploads");
+ } catch(\GuzzleHttp\Exception\BadResponseException $ex) {
+ $this->response = $ex->getResponse();
+ }
+ }
/**
* @Given /^Downloading file "([^"]*)" as "([^"]*)"$/
diff --git a/build/integration/features/webdav-related.feature b/build/integration/features/webdav-related.feature
index b8ed1c4a778..77fe811fada 100644
--- a/build/integration/features/webdav-related.feature
+++ b/build/integration/features/webdav-related.feature
@@ -578,3 +578,23 @@ Feature: webdav-related
And user "user0" created a folder "/testshare"
When User "user0" moves folder "/testshare" to "/hola%5Chola"
Then the HTTP status code should be "400"
+
+ Scenario: Upload file via new chunking endpoint with wrong size header
+ Given using new dav path
+ And user "user0" exists
+ And user "user0" creates a new chunking upload with id "chunking-42"
+ And user "user0" uploads new chunk file "1" with "AAAAA" to id "chunking-42"
+ And user "user0" uploads new chunk file "2" with "BBBBB" to id "chunking-42"
+ And user "user0" uploads new chunk file "3" with "CCCCC" to id "chunking-42"
+ When user "user0" moves new chunk file with id "chunking-42" to "/myChunkedFile.txt" with size 5
+ Then the HTTP status code should be "400"
+
+ Scenario: Upload file via new chunking endpoint with correct size header
+ Given using new dav path
+ And user "user0" exists
+ And user "user0" creates a new chunking upload with id "chunking-42"
+ And user "user0" uploads new chunk file "1" with "AAAAA" to id "chunking-42"
+ And user "user0" uploads new chunk file "2" with "BBBBB" to id "chunking-42"
+ And user "user0" uploads new chunk file "3" with "CCCCC" to id "chunking-42"
+ When user "user0" moves new chunk file with id "chunking-42" to "/myChunkedFile.txt" with size 15
+ Then the HTTP status code should be "201"