diff --git a/app/views/uploads/show.html.erb b/app/views/uploads/show.html.erb
index c1565dbda..fc54afb51 100644
--- a/app/views/uploads/show.html.erb
+++ b/app/views/uploads/show.html.erb
@@ -12,7 +12,7 @@
<% end %>
<% elsif @upload.media_asset_count == 1 %>
- <%= render "single_asset_upload", upload_media_asset: @upload.upload_media_assets.first %>
+ <%= render "uploads/single_asset_upload", upload_media_asset: @upload.upload_media_assets.first %>
<% end %>
diff --git a/test/functional/posts_controller_test.rb b/test/functional/posts_controller_test.rb
index 0125a09a6..a9bcf36bc 100644
--- a/test/functional/posts_controller_test.rb
+++ b/test/functional/posts_controller_test.rb
@@ -6,7 +6,7 @@ class PostsControllerTest < ActionDispatch::IntegrationTest
end
def create_post!(user: create(:user), media_asset: build(:media_asset), rating: "q", tag_string: "tagme", **params)
- upload = build(:upload, uploader: user)
+ upload = build(:upload, uploader: user, media_asset_count: 1, status: "completed")
asset = create(:upload_media_asset, upload: upload, media_asset: media_asset)
post_auth posts_path, user, params: { upload_media_asset_id: asset.id, post: { rating: rating, tag_string: tag_string, **params }}
@@ -666,6 +666,15 @@ class PostsControllerTest < ActionDispatch::IntegrationTest
assert_response :success
end
+ should "re-render the upload page if the rating is not selected" do
+ assert_no_difference("Post.count") do
+ @post = create_post!(rating: "", tag_string: "tagme")
+ end
+
+ assert_response :success
+ assert_equal("Rating not selected", flash[:notice])
+ end
+
should "merge the tags and redirect to the original post if the upload is a duplicate of an existing post" do
media_asset = create(:media_asset)
post1 = create_post!(rating: "s", tag_string: "post1", media_asset: media_asset)