aboutsummaryrefslogtreecommitdiffstats
path: root/test/service/mirror_service_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/service/mirror_service_test.rb')
-rw-r--r--test/service/mirror_service_test.rb27
1 files changed, 16 insertions, 11 deletions
diff --git a/test/service/mirror_service_test.rb b/test/service/mirror_service_test.rb
index 10af41c0a8..6fee3cadd2 100644
--- a/test/service/mirror_service_test.rb
+++ b/test/service/mirror_service_test.rb
@@ -2,12 +2,17 @@ require "tmpdir"
require "service/shared_service_tests"
class ActiveStorage::Service::MirrorServiceTest < ActiveSupport::TestCase
- PRIMARY_DISK_SERVICE = ActiveStorage::Service.configure(:Disk, root: File.join(Dir.tmpdir, "active_storage"))
- MIRROR_SERVICES = (1..3).map do |i|
- ActiveStorage::Service.configure(:Disk, root: File.join(Dir.tmpdir, "active_storage_mirror_#{i}"))
- end
+ mirror_config = (1..3).map do |i|
+ [ "mirror_#{i}",
+ service: "Disk",
+ root: File.join(Dir.tmpdir, "active_storage_mirror_#{i}") ]
+ end.to_h
+
+ config = mirror_config.merge \
+ mirror: { service: "Mirror", primary: 'primary', mirrors: mirror_config.keys },
+ primary: { service: "Disk", root: File.join(Dir.tmpdir, "active_storage") }
- SERVICE = ActiveStorage::Service.configure :Mirror, primary: PRIMARY_DISK_SERVICE, mirrors: MIRROR_SERVICES
+ SERVICE = ActiveStorage::Service.configure :mirror, config
include ActiveStorage::Service::SharedServiceTests
@@ -16,8 +21,8 @@ class ActiveStorage::Service::MirrorServiceTest < ActiveSupport::TestCase
data = "Something else entirely!"
key = upload(data, to: @service)
- assert_equal data, PRIMARY_DISK_SERVICE.download(key)
- MIRROR_SERVICES.each do |mirror|
+ assert_equal data, SERVICE.primary.download(key)
+ SERVICE.mirrors.each do |mirror|
assert_equal data, mirror.download(key)
end
ensure
@@ -27,22 +32,22 @@ class ActiveStorage::Service::MirrorServiceTest < ActiveSupport::TestCase
test "downloading from primary service" do
data = "Something else entirely!"
- key = upload(data, to: PRIMARY_DISK_SERVICE)
+ key = upload(data, to: SERVICE.primary)
assert_equal data, @service.download(key)
end
test "deleting from all services" do
@service.delete FIXTURE_KEY
- assert_not PRIMARY_DISK_SERVICE.exist?(FIXTURE_KEY)
- MIRROR_SERVICES.each do |mirror|
+ assert_not SERVICE.primary.exist?(FIXTURE_KEY)
+ SERVICE.mirrors.each do |mirror|
assert_not mirror.exist?(FIXTURE_KEY)
end
end
test "URL generation in primary service" do
travel_to Time.now do
- assert_equal PRIMARY_DISK_SERVICE.url(FIXTURE_KEY, expires_in: 2.minutes, disposition: :inline, filename: "test.txt"),
+ assert_equal SERVICE.primary.url(FIXTURE_KEY, expires_in: 2.minutes, disposition: :inline, filename: "test.txt"),
@service.url(FIXTURE_KEY, expires_in: 2.minutes, disposition: :inline, filename: "test.txt")
end
end