diff --git a/app/logical/downloads/rewrite_strategies/tumblr.rb b/app/logical/downloads/rewrite_strategies/tumblr.rb index 9771fc7be..8e934bcaa 100644 --- a/app/logical/downloads/rewrite_strategies/tumblr.rb +++ b/app/logical/downloads/rewrite_strategies/tumblr.rb @@ -34,11 +34,10 @@ module Downloads return [url, headers] end + # https://gs1.wac.edgecastcdn.net/8019B6/data.tumblr.com/tumblr_m2dxb8aOJi1rop2v0o1_500.png + # => http://data.tumblr.com/tumblr_m2dxb8aOJi1rop2v0o1_500.png def rewrite_cdn(url, headers) - if url =~ %r{https?://gs1\.wac\.edgecastcdn\.net/8019B6/data\.tumblr\.com/} - url.sub!("gs1.wac.edgecastcdn.net/8019B6/", "") - end - + url.sub!(%r!\Ahttps?://gs1\.wac\.edgecastcdn\.net/8019B6/data\.tumblr\.com!i, "http://data.tumblr.com") return [url, headers] end end diff --git a/test/unit/downloads/tumblr_test.rb b/test/unit/downloads/tumblr_test.rb index afc8a85eb..0f2290efb 100644 --- a/test/unit/downloads/tumblr_test.rb +++ b/test/unit/downloads/tumblr_test.rb @@ -16,5 +16,15 @@ module Downloads assert_downloaded(90_122, @source) end end + + context "a download for a gs1.wac.edgecastcdn.net image" do + should "rewrite to the full tumblr version" do + @source = "https://gs1.wac.edgecastcdn.net/8019B6/data.tumblr.com/tumblr_m2dxb8aOJi1rop2v0o1_500.png" + @rewrite = "http://data.tumblr.com/tumblr_m2dxb8aOJi1rop2v0o1_1280.png" + + assert_downloaded(34_060, @source) + assert_rewritten(@rewrite, @source) + end + end end end