Files
rustfs/crates/e2e_test/src/protocols/README.md
T
d3cff7d033 feat(webdav): add WebDAV protocol gateway (#2158)
Signed-off-by: yxrxy <[email protected]>
Co-authored-by: houseme <[email protected]>
Co-authored-by: 马登山 <[email protected]>
Co-authored-by: heihutu <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
Co-authored-by: 安正超 <[email protected]>
2026-03-14 23:06:53 +08:00

1.2 KiB

Protocol E2E Tests

FTPS and WebDAV protocol end-to-end tests for RustFS.

Prerequisites

Required Tools

# Ubuntu/Debian
sudo apt-get install sshpass ssh-keygen

# RHEL/CentOS
sudo yum install sshpass openssh-clients

# macOS
brew install sshpass openssh

Running Tests

Run all protocol tests (FTPS + WebDAV):

RUSTFS_BUILD_FEATURES=ftps,webdav cargo test --package e2e_test test_protocol_core_suite -- --test-threads=1 --nocapture

Run FTPS tests only:

RUSTFS_BUILD_FEATURES=ftps cargo test --package e2e_test test_protocol_core_suite -- --test-threads=1 --nocapture

Run WebDAV tests only:

RUSTFS_BUILD_FEATURES=webdav cargo test --package e2e_test test_protocol_core_suite -- --test-threads=1 --nocapture

Test Coverage

FTPS Tests

  • mkdir bucket
  • cd to bucket
  • put file
  • ls list objects
  • cd . (stay in current directory)
  • cd / (return to root)
  • cd nonexistent bucket (should fail)
  • delete object
  • cdup
  • rmdir delete bucket

WebDAV Tests

  • PROPFIND at root (list buckets)
  • MKCOL (create bucket)
  • PUT (upload file)
  • GET (download file)
  • PROPFIND on bucket (list objects)
  • DELETE file
  • DELETE bucket
  • Authentication failure test