aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/active_vault/site/mirror_site.rb8
-rw-r--r--test/site/mirror_site_test.rb9
2 files changed, 14 insertions, 3 deletions
diff --git a/lib/active_vault/site/mirror_site.rb b/lib/active_vault/site/mirror_site.rb
index 62b2f20586..8a2fa52fcb 100644
--- a/lib/active_vault/site/mirror_site.rb
+++ b/lib/active_vault/site/mirror_site.rb
@@ -9,7 +9,7 @@ class ActiveVault::Site::MirrorSite < ActiveVault::Site
sites.collect do |site|
site.upload key, io
io.rewind
- end
+ end
end
def download(key)
@@ -25,6 +25,10 @@ class ActiveVault::Site::MirrorSite < ActiveVault::Site
end
+ def url(key, **options)
+ primary_site.url(key, **options)
+ end
+
def byte_size(key)
primary_site.byte_size(key)
end
@@ -42,6 +46,6 @@ class ActiveVault::Site::MirrorSite < ActiveVault::Site
# FIXME: Convert to be threaded
sites.collect do |site|
site.public_send method, *args
- end
+ end
end
end
diff --git a/test/site/mirror_site_test.rb b/test/site/mirror_site_test.rb
index 326edb2f9c..bdb0b4c357 100644
--- a/test/site/mirror_site_test.rb
+++ b/test/site/mirror_site_test.rb
@@ -9,7 +9,7 @@ class ActiveVault::Site::MirrorSiteTest < ActiveSupport::TestCase
include ActiveVault::Site::SharedSiteTests
- test "uploading was done to all sites" do
+ test "uploading to all sites" do
begin
key = SecureRandom.base58(24)
data = "Something else entirely!"
@@ -27,4 +27,11 @@ class ActiveVault::Site::MirrorSiteTest < ActiveSupport::TestCase
assert PRIMARY_DISK_SITE.exist?(FIXTURE_KEY)
assert SECONDARY_DISK_SITE.exist?(FIXTURE_KEY)
end
+
+ test "URL generation for primary site" do
+ travel_to Time.now do
+ assert_equal PRIMARY_DISK_SITE.url(FIXTURE_KEY, expires_in: 5.minutes, disposition: :inline, filename: "test.txt"),
+ SITE.url(FIXTURE_KEY, expires_in: 5.minutes, disposition: :inline, filename: "test.txt")
+ end
+ end
end