Skip to content

Commit c3a43f2

Browse files
committed
add step for checking the status code and headers in TUS upload
Signed-off-by: nabim777 <nabinalemagar019@gmail.com>
1 parent 450cac7 commit c3a43f2

11 files changed

+152
-77
lines changed

tests/acceptance/bootstrap/TUSContext.php

+18-14
Original file line numberDiff line numberDiff line change
@@ -443,17 +443,13 @@ public function userUploadsAFileWithContentToUsingTus(
443443
string $destination
444444
): void {
445445
$temporaryFileName = $this->writeDataToTempFile($content);
446-
try {
447-
$this->uploadFileUsingTus(
448-
$user,
449-
\basename($temporaryFileName),
450-
$destination
451-
);
452-
$this->featureContext->setLastUploadDeleteTime(\time());
453-
} catch (Exception $e) {
454-
Assert::assertStringContainsString('TusPhp\Exception\FileException: Unable to create resource', (string)$e);
455-
}
446+
$response = $this->uploadFileUsingTus(
447+
$user,
448+
\basename($temporaryFileName),
449+
$destination
450+
);
456451
\unlink($temporaryFileName);
452+
$this->featureContext->setResponse($response);
457453
}
458454

459455
/**
@@ -480,7 +476,7 @@ public function userUploadsAFileWithContentInChunksUsingTus(
480476
string $destination
481477
): void {
482478
$temporaryFileName = $this->writeDataToTempFile($content);
483-
$this->uploadFileUsingTus(
479+
$response = $this->uploadFileUsingTus(
484480
$user,
485481
\basename($temporaryFileName),
486482
$destination,
@@ -490,6 +486,7 @@ public function userUploadsAFileWithContentInChunksUsingTus(
490486
);
491487
$this->featureContext->setLastUploadDeleteTime(\time());
492488
\unlink($temporaryFileName);
489+
$this->featureContext->setResponse($response);
493490
}
494491

495492
/**
@@ -513,14 +510,19 @@ public function userHasUploadedFileWithMtimeUsingTUS(
513510
$mtime = new DateTime($mtime);
514511
$mtime = $mtime->format('U');
515512
$user = $this->featureContext->getActualUsername($user);
516-
$this->uploadFileUsingTus(
513+
$response = $this->uploadFileUsingTus(
517514
$user,
518515
$source,
519516
$destination,
520517
null,
521518
['mtime' => $mtime]
522519
);
523520
$this->featureContext->setLastUploadDeleteTime(\time());
521+
$this->featureContext->theHTTPStatusCodeShouldBe(
522+
["201", "204"],
523+
"HTTP status code was not 201 or 204 while trying to upload file '$source' for user '$user'",
524+
$response
525+
);
524526
}
525527

526528
/**
@@ -544,14 +546,15 @@ public function userUploadsFileWithContentToWithMtimeUsingTUS(
544546
$mtime = new DateTime($mtime);
545547
$mtime = $mtime->format('U');
546548
$user = $this->featureContext->getActualUsername($user);
547-
$this->uploadFileUsingTus(
549+
$response = $this->uploadFileUsingTus(
548550
$user,
549551
$source,
550552
$destination,
551553
null,
552554
['mtime' => $mtime]
553555
);
554556
$this->featureContext->setLastUploadDeleteTime(\time());
557+
$this->featureContext->setResponse($response);
555558
}
556559

557560
/**
@@ -629,7 +632,7 @@ public function userUploadsWithCreatesWithUpload(
629632
string $content
630633
): void {
631634
$temporaryFileName = $this->writeDataToTempFile($content);
632-
$this->uploadFileUsingTus(
635+
$response = $this->uploadFileUsingTus(
633636
$user,
634637
\basename($temporaryFileName),
635638
$source,
@@ -640,6 +643,7 @@ public function userUploadsWithCreatesWithUpload(
640643
);
641644
$this->featureContext->setLastUploadDeleteTime(\time());
642645
\unlink($temporaryFileName);
646+
$this->featureContext->setResponse($response);
643647
}
644648

645649
/**

tests/acceptance/expected-failures-without-remotephp.md

+32-32
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,8 @@
200200
- [apiSpaces/uploadSpaces.feature:132](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpaces/uploadSpaces.feature#L132)
201201
- [apiSpacesShares/shareSpacesViaLink.feature:61](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/shareSpacesViaLink.feature#L61)
202202
- [apiSpacesShares/shareUploadTUS.feature:421](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/shareUploadTUS.feature#L421)
203-
- [apiSpacesShares/shareUploadTUS.feature:438](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/shareUploadTUS.feature#L438)
204-
- [apiSpacesShares/shareUploadTUS.feature:457](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/shareUploadTUS.feature#L457)
203+
- [apiSpacesShares/shareUploadTUS.feature:441](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/shareUploadTUS.feature#L441)
204+
- [apiSpacesShares/shareUploadTUS.feature:463](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/shareUploadTUS.feature#L463)
205205
- [apiDepthInfinity/propfind.feature:74](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiDepthInfinity/propfind.feature#L74)
206206
- [apiDepthInfinity/propfind.feature:124](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiDepthInfinity/propfind.feature#L124)
207207
- [apiLocks/lockFiles.feature:490](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L490)
@@ -323,48 +323,48 @@
323323

324324
#### [Cannot create new TUS upload resource using /webdav without remote.php - returns html instead](https://github.com/owncloud/ocis/issues/10346)
325325

326-
- [apiSpaces/tusUpload.feature:63](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpaces/tusUpload.feature#L63)
327-
- [apiSpaces/tusUpload.feature:110](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpaces/tusUpload.feature#L110)
328-
- [coreApiWebdavUploadTUS/creationWithUploadExtension.feature:38](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/creationWithUploadExtension.feature#L38)
329-
- [coreApiWebdavUploadTUS/uploadFile.feature:16](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L16)
326+
- [apiSpaces/tusUpload.feature:66](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpaces/tusUpload.feature#L66)
327+
- [apiSpaces/tusUpload.feature:122](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpaces/tusUpload.feature#L122)
328+
- [coreApiWebdavUploadTUS/creationWithUploadExtension.feature:42](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/creationWithUploadExtension.feature#L42)
330329
- [coreApiWebdavUploadTUS/uploadFile.feature:17](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L17)
331330
- [coreApiWebdavUploadTUS/uploadFile.feature:18](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L18)
332331
- [coreApiWebdavUploadTUS/uploadFile.feature:19](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L19)
333332
- [coreApiWebdavUploadTUS/uploadFile.feature:20](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L20)
334333
- [coreApiWebdavUploadTUS/uploadFile.feature:21](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L21)
335334
- [coreApiWebdavUploadTUS/uploadFile.feature:22](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L22)
336-
- [coreApiWebdavUploadTUS/uploadFile.feature:46](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L46)
337-
- [coreApiWebdavUploadTUS/uploadFile.feature:47](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L47)
335+
- [coreApiWebdavUploadTUS/uploadFile.feature:23](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L23)
338336
- [coreApiWebdavUploadTUS/uploadFile.feature:48](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L48)
339337
- [coreApiWebdavUploadTUS/uploadFile.feature:49](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L49)
340338
- [coreApiWebdavUploadTUS/uploadFile.feature:50](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L50)
341339
- [coreApiWebdavUploadTUS/uploadFile.feature:51](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L51)
342340
- [coreApiWebdavUploadTUS/uploadFile.feature:52](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L52)
343-
- [coreApiWebdavUploadTUS/uploadFile.feature:75](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L75)
344-
- [coreApiWebdavUploadTUS/uploadFile.feature:86](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L86)
345-
- [coreApiWebdavUploadTUS/uploadFile.feature:98](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L98)
346-
- [coreApiWebdavUploadTUS/uploadFile.feature:109](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L109)
347-
- [coreApiWebdavUploadTUS/uploadFile.feature:122](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L122)
348-
- [coreApiWebdavUploadTUS/uploadFile.feature:133](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L133)
349-
- [coreApiWebdavUploadTUS/uploadFile.feature:146](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L146)
350-
- [coreApiWebdavUploadTUS/uploadFile.feature:168](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L168)
351-
- [coreApiWebdavUploadTUS/uploadFile.feature:187](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L187)
341+
- [coreApiWebdavUploadTUS/uploadFile.feature:53](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L53)
342+
- [coreApiWebdavUploadTUS/uploadFile.feature:54](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L54)
343+
- [coreApiWebdavUploadTUS/uploadFile.feature:78](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L78)
344+
- [coreApiWebdavUploadTUS/uploadFile.feature:90](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L90)
345+
- [coreApiWebdavUploadTUS/uploadFile.feature:103](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L103)
346+
- [coreApiWebdavUploadTUS/uploadFile.feature:115](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L115)
347+
- [coreApiWebdavUploadTUS/uploadFile.feature:129](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L129)
348+
- [coreApiWebdavUploadTUS/uploadFile.feature:141](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L141)
349+
- [coreApiWebdavUploadTUS/uploadFile.feature:155](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L155)
350+
- [coreApiWebdavUploadTUS/uploadFile.feature:177](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L177)
351+
- [coreApiWebdavUploadTUS/uploadFile.feature:200](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L200)
352352
- [coreApiWebdavUploadTUS/uploadFile.feature:199](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L199)
353-
- [coreApiWebdavUploadTUS/uploadFile.feature:212](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L212)
354-
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:16](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L16)
355-
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:27](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L27)
356-
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:39](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L39)
357-
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:51](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L51)
358-
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:65](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L65)
359-
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:29](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L29)
360-
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:48](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L48)
361-
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:69](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L69)
362-
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:89](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L89)
363-
- [coreApiWebdavUploadTUS/uploadToMoveFolder.feature:20](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToMoveFolder.feature#L20)
364-
- [coreApiWebdavUploadTUS/uploadToShare.feature:29](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L29)
365-
- [coreApiWebdavUploadTUS/uploadToShare.feature:48](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L48)
366-
- [coreApiWebdavUploadTUS/uploadToShare.feature:69](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L69)
367-
- [coreApiWebdavUploadTUS/uploadToShare.feature:89](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L89)
353+
- [coreApiWebdavUploadTUS/uploadFile.feature:216](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFile.feature#L216)
354+
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:17](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L17)
355+
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:29](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L29)
356+
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:42](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L42)
357+
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:55](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L55)
358+
- [coreApiWebdavUploadTUS/uploadFileMtime.feature:70](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtime.feature#L70)
359+
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:30](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L30)
360+
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:50](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L50)
361+
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:72](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L72)
362+
- [coreApiWebdavUploadTUS/uploadFileMtimeShares.feature:93](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadFileMtimeShares.feature#L93)
363+
- [coreApiWebdavUploadTUS/uploadToMoveFolder.feature:21](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToMoveFolder.feature#L21)
364+
- [coreApiWebdavUploadTUS/uploadToShare.feature:30](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L30)
365+
- [coreApiWebdavUploadTUS/uploadToShare.feature:50](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L50)
366+
- [coreApiWebdavUploadTUS/uploadToShare.feature:72](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L72)
367+
- [coreApiWebdavUploadTUS/uploadToShare.feature:93](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUploadTUS/uploadToShare.feature#L93)
368368

369369
#### [PROPFIND to /webdav root (old dav path) without remote.php returns html instead of xml](https://github.com/owncloud/ocis/issues/10334)
370370

0 commit comments

Comments
 (0)