diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2017-07-06 16:01:11 +0200 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2017-07-06 16:01:11 +0200 |
commit | 894e1e3183b78d62d873454312882df53a29f850 (patch) | |
tree | 0a01a8bad85dbe6ba1f536473ce96b5c3e90fbd1 /test/service | |
parent | ef07687262716984db51c173a0378d1eb0664289 (diff) | |
download | rails-894e1e3183b78d62d873454312882df53a29f850.tar.gz rails-894e1e3183b78d62d873454312882df53a29f850.tar.bz2 rails-894e1e3183b78d62d873454312882df53a29f850.zip |
Check integrity after uploads
Diffstat (limited to 'test/service')
-rw-r--r-- | test/service/shared_service_tests.rb | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/test/service/shared_service_tests.rb b/test/service/shared_service_tests.rb index 3676272e27..b4c888e77c 100644 --- a/test/service/shared_service_tests.rb +++ b/test/service/shared_service_tests.rb @@ -26,11 +26,11 @@ module ActiveStorage::Service::SharedServiceTests FIXTURE_FILE.rewind end - test "uploading" do + test "uploading with integrity" do begin key = SecureRandom.base58(24) data = "Something else entirely!" - @service.upload(key, StringIO.new(data)) + @service.upload(key, StringIO.new(data), checksum: Digest::MD5.base64digest(data)) assert_equal data, @service.download(key) ensure @@ -38,6 +38,19 @@ module ActiveStorage::Service::SharedServiceTests end end + test "upload without integrity" do + begin + key = SecureRandom.base58(24) + data = "Something else entirely!" + + assert_raises(ActiveStorage::IntegrityError) do + @service.upload(key, StringIO.new(data), checksum: "BAD_CHECKSUM") + end + ensure + @service.delete key + end + end + test "downloading" do assert_equal FIXTURE_FILE.read, @service.download(FIXTURE_KEY) end |