From 5bb3f63b318932de0bc21b164d5eb2530a718c3d Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Sun, 9 Jul 2017 17:04:37 +0200 Subject: [PATCH] Test URL generation for S3 and Disk --- test/service/disk_service_test.rb | 5 +++++ test/service/s3_service_test.rb | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/test/service/disk_service_test.rb b/test/service/disk_service_test.rb index 94df146024..c5404f55e6 100644 --- a/test/service/disk_service_test.rb +++ b/test/service/disk_service_test.rb @@ -5,4 +5,9 @@ class ActiveStorage::Service::DiskServiceTest < ActiveSupport::TestCase SERVICE = ActiveStorage::Service::DiskService.new(root: File.join(Dir.tmpdir, "active_storage")) include ActiveStorage::Service::SharedServiceTests + + test "url generation" do + assert_match /rails\/blobs\/.*\/avatar\.png\?disposition=inline/, + @service.url(FIXTURE_KEY, expires_in: 5.minutes, disposition: :inline, filename: "avatar.png") + end end diff --git a/test/service/s3_service_test.rb b/test/service/s3_service_test.rb index e8cc4cb5f4..3e1838e393 100644 --- a/test/service/s3_service_test.rb +++ b/test/service/s3_service_test.rb @@ -5,6 +5,11 @@ if SERVICE_CONFIGURATIONS[:s3] SERVICE = ActiveStorage::Service.configure(:s3, SERVICE_CONFIGURATIONS) include ActiveStorage::Service::SharedServiceTests + + test "signed URL generation" do + assert_match /rails-activestorage\.s3\.amazonaws\.com.*response-content-disposition=inline.*avatar\.png/, + @service.url(FIXTURE_KEY, expires_in: 5.minutes, disposition: :inline, filename: "avatar.png") + end end else puts "Skipping S3 Service tests because no S3 configuration was supplied"