Fabricator(:upload) do user sha1 { sequence(:sha1) { |n| Digest::SHA1.hexdigest(n.to_s) } } original_filename "logo.png" filesize 1234 width 100 height 200 thumbnail_width 30 thumbnail_height 60 url do |attrs| sequence(:url) do |n| Discourse.store.get_path_for( "original", n + 1, attrs[:sha1], ".#{attrs[:extension]}" ) end end extension "png" end Fabricator(:upload_s3, from: :upload) do url do |attrs| sequence(:url) do |n| File.join( Discourse.store.absolute_base_url, Discourse.store.get_path_for( "original", n + 1, attrs[:sha1], ".#{attrs[:extension]}" ) ) end end end