checksums.feature 5.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. Feature: checksums
  2. Scenario: Uploading a file with checksum should work
  3. Given user "user0" exists
  4. When user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  5. Then The webdav response should have a status code "201"
  6. Scenario: Uploading a file with checksum should return the checksum in the propfind
  7. Given user "user0" exists
  8. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  9. When user "user0" request the checksum of "/myChecksumFile.txt" via propfind
  10. Then The webdav checksum should match "MD5:d70b40f177b14b470d1756a3c12b963a"
  11. Scenario: Uploading a file with checksum should return the checksum in the download header
  12. Given user "user0" exists
  13. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  14. When user "user0" downloads the file "/myChecksumFile.txt"
  15. Then The header checksum should match "MD5:d70b40f177b14b470d1756a3c12b963a"
  16. Scenario: Moving a file with checksum should return the checksum in the propfind
  17. Given user "user0" exists
  18. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  19. When User "user0" moved file "/myChecksumFile.txt" to "/myMovedChecksumFile.txt"
  20. And user "user0" request the checksum of "/myMovedChecksumFile.txt" via propfind
  21. Then The webdav checksum should match "MD5:d70b40f177b14b470d1756a3c12b963a"
  22. Scenario: Moving file with checksum should return the checksum in the download header
  23. Given user "user0" exists
  24. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  25. When User "user0" moved file "/myChecksumFile.txt" to "/myMovedChecksumFile.txt"
  26. And user "user0" downloads the file "/myMovedChecksumFile.txt"
  27. Then The header checksum should match "MD5:d70b40f177b14b470d1756a3c12b963a"
  28. Scenario: Copying a file with checksum should return the checksum in the propfind
  29. Given user "user0" exists
  30. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  31. When User "user0" copied file "/myChecksumFile.txt" to "/myChecksumFileCopy.txt"
  32. And user "user0" request the checksum of "/myChecksumFileCopy.txt" via propfind
  33. Then The webdav checksum should match "MD5:d70b40f177b14b470d1756a3c12b963a"
  34. Scenario: Copying file with checksum should return the checksum in the download header
  35. Given user "user0" exists
  36. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  37. When User "user0" copied file "/myChecksumFile.txt" to "/myChecksumFileCopy.txt"
  38. And user "user0" downloads the file "/myChecksumFileCopy.txt"
  39. Then The header checksum should match "MD5:d70b40f177b14b470d1756a3c12b963a"
  40. Scenario: Overwriting a file with checksum should remove the checksum and not return it in the propfind
  41. Given user "user0" exists
  42. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  43. When user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt"
  44. And user "user0" request the checksum of "/myChecksumFile.txt" via propfind
  45. Then The webdav checksum should be empty
  46. Scenario: Overwriting a file with checksum should remove the checksum and not return it in the download header
  47. Given user "user0" exists
  48. And user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
  49. When user "user0" uploads file "data/textfile.txt" to "/myChecksumFile.txt"
  50. And user "user0" downloads the file "/myChecksumFile.txt"
  51. Then The OC-Checksum header should not be there
  52. Scenario: Uploading a chunked file with checksum should return the checksum in the propfind
  53. Given user "user0" exists
  54. And user "user0" uploads chunk file "1" of "3" with "AAAAA" to "/myChecksumFile.txt" with checksum "MD5:e892fdd61a74bc89cd05673cc2e22f88"
  55. And user "user0" uploads chunk file "2" of "3" with "BBBBB" to "/myChecksumFile.txt" with checksum "MD5:e892fdd61a74bc89cd05673cc2e22f88"
  56. And user "user0" uploads chunk file "3" of "3" with "CCCCC" to "/myChecksumFile.txt" with checksum "MD5:e892fdd61a74bc89cd05673cc2e22f88"
  57. When user "user0" request the checksum of "/myChecksumFile.txt" via propfind
  58. Then The webdav checksum should match "MD5:e892fdd61a74bc89cd05673cc2e22f88"
  59. Scenario: Uploading a chunked file with checksum should return the checksum in the download header
  60. Given user "user0" exists
  61. And user "user0" uploads chunk file "1" of "3" with "AAAAA" to "/myChecksumFile.txt" with checksum "MD5:e892fdd61a74bc89cd05673cc2e22f88"
  62. And user "user0" uploads chunk file "2" of "3" with "BBBBB" to "/myChecksumFile.txt" with checksum "MD5:e892fdd61a74bc89cd05673cc2e22f88"
  63. And user "user0" uploads chunk file "3" of "3" with "CCCCC" to "/myChecksumFile.txt" with checksum "MD5:e892fdd61a74bc89cd05673cc2e22f88"
  64. When user "user0" downloads the file "/myChecksumFile.txt"
  65. Then The header checksum should match "MD5:e892fdd61a74bc89cd05673cc2e22f88"