diff options
author | George Claghorn <george.claghorn@gmail.com> | 2017-12-02 22:43:28 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-02 22:43:28 -0500 |
commit | 8c5a7fbefd3cad403e7594d0b6a5488d80d4c98e (patch) | |
tree | 837dc872b3769a9ec4e08096c0ef2847288f64ba /activestorage/test | |
parent | b23e381c89aa91451d73d3a1b1b6e4cbe7bc7780 (diff) | |
download | rails-8c5a7fbefd3cad403e7594d0b6a5488d80d4c98e.tar.gz rails-8c5a7fbefd3cad403e7594d0b6a5488d80d4c98e.tar.bz2 rails-8c5a7fbefd3cad403e7594d0b6a5488d80d4c98e.zip |
Purge variants with their blobs
Diffstat (limited to 'activestorage/test')
-rw-r--r-- | activestorage/test/models/blob_test.rb | 10 | ||||
-rw-r--r-- | activestorage/test/service/shared_service_tests.rb | 17 |
2 files changed, 26 insertions, 1 deletions
diff --git a/activestorage/test/models/blob_test.rb b/activestorage/test/models/blob_test.rb index 6e815997ba..f94e65ed77 100644 --- a/activestorage/test/models/blob_test.rb +++ b/activestorage/test/models/blob_test.rb @@ -41,13 +41,21 @@ class ActiveStorage::BlobTest < ActiveSupport::TestCase end end - test "purge removes from external service" do + test "purge deletes file from external service" do blob = create_blob blob.purge assert_not ActiveStorage::Blob.service.exist?(blob.key) end + test "purge deletes variants from external service" do + blob = create_file_blob + variant = blob.variant(resize: "100>").processed + + blob.purge + assert_not ActiveStorage::Blob.service.exist?(variant.key) + end + private def expected_url_for(blob, disposition: :inline) query_string = { content_type: blob.content_type, disposition: "#{disposition}; #{blob.filename.parameters}" }.to_param diff --git a/activestorage/test/service/shared_service_tests.rb b/activestorage/test/service/shared_service_tests.rb index ade91ab89a..ce28c4393a 100644 --- a/activestorage/test/service/shared_service_tests.rb +++ b/activestorage/test/service/shared_service_tests.rb @@ -75,5 +75,22 @@ module ActiveStorage::Service::SharedServiceTests @service.delete SecureRandom.base58(24) end end + + test "deleting by prefix" do + begin + @service.upload("a/a/a", StringIO.new(FIXTURE_DATA)) + @service.upload("a/a/b", StringIO.new(FIXTURE_DATA)) + @service.upload("a/b/a", StringIO.new(FIXTURE_DATA)) + + @service.delete_prefixed("a/a/") + assert_not @service.exist?("a/a/a") + assert_not @service.exist?("a/a/b") + assert @service.exist?("a/b/a") + ensure + @service.delete("a/a/a") + @service.delete("a/a/b") + @service.delete("a/b/a") + end + end end end |