/post_replacements: allow updating image metadata in past replacements.

This commit is contained in:
evazion
2017-12-18 17:57:05 -06:00
parent e6acd6f2d6
commit fa941e9480
3 changed files with 35 additions and 1 deletions

View File

@@ -14,6 +14,13 @@ class PostReplacementsController < ApplicationController
respond_with(@post_replacement, location: @post)
end
def update
@post_replacement = PostReplacement.find(params[:id])
@post_replacement.update(update_params)
respond_with(@post_replacement)
end
def index
params[:search][:post_id] = params.delete(:post_id) if params.has_key?(:post_id)
@post_replacements = PostReplacement.search(params[:search]).paginate(params[:page], limit: params[:limit])
@@ -25,4 +32,12 @@ private
def create_params
params.require(:post_replacement).permit(:replacement_url, :replacement_file, :final_source, :tags)
end
def update_params
params.require(:post_replacement).permit(
:file_ext_was, :file_size_was, :image_width_was, :image_height_was, :md5_was,
:file_ext, :file_size, :image_width, :image_height, :md5,
:original_url, :replacement_url
)
end
end

View File

@@ -195,7 +195,7 @@ Rails.application.routes.draw do
get :diff
end
end
resources :post_replacements, :only => [:index, :new, :create]
resources :post_replacements, :only => [:index, :new, :create, :update]
resources :posts do
resources :events, :only => [:index], :controller => "post_events"
resources :replacements, :only => [:index, :new, :create], :controller => "post_replacements"

View File

@@ -43,6 +43,25 @@ class PostReplacementsControllerTest < ActionController::TestCase
end
end
context "update action" do
should "update the replacement" do
params = {
format: :json,
id: @post_replacement.id,
post_replacement: {
file_size_was: 23,
file_size: 42,
}
}
put :update, params, { user_id: @user.id }
@post_replacement.reload
assert_equal(23, @post_replacement.file_size_was)
assert_equal(42, @post_replacement.file_size)
end
end
context "index action" do
should "render" do
get :index, {format: :json}