From: Tom Hughes Date: Thu, 28 Dec 2023 18:39:22 +0000 (+0000) Subject: Merge remote-tracking branch 'upstream/pull/4439' X-Git-Tag: live~413 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/ee56d1057dffb23bc3836970aab06f455e4ae487?hp=67190393581af29dc2708f20446ccce1d6b081f6 Merge remote-tracking branch 'upstream/pull/4439' --- diff --git a/app/controllers/user_blocks_controller.rb b/app/controllers/user_blocks_controller.rb index 546c8233c..885318cbe 100644 --- a/app/controllers/user_blocks_controller.rb +++ b/app/controllers/user_blocks_controller.rb @@ -39,11 +39,13 @@ class UserBlocksController < ApplicationController def create if @valid_params + now = Time.now.utc @user_block = UserBlock.new( :user => @user, :creator => current_user, :reason => params[:user_block][:reason], - :ends_at => Time.now.utc + @block_period.hours, + :created_at => now, + :ends_at => now + @block_period.hours, :needs_view => params[:user_block][:needs_view] ) diff --git a/test/controllers/user_blocks_controller_test.rb b/test/controllers/user_blocks_controller_test.rb index 27022c973..2c363be3d 100644 --- a/test/controllers/user_blocks_controller_test.rb +++ b/test/controllers/user_blocks_controller_test.rb @@ -261,6 +261,21 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest assert_select "h1", "The user non_existent_user does not exist" end + ## + # test the duration of a created block + def test_create_duration + target_user = create(:user) + moderator_user = create(:moderator_user) + + session_for(moderator_user) + post user_blocks_path(:display_name => target_user.display_name, + :user_block_period => "336", + :user_block => { :needs_view => false, :reason => "Vandalism" }) + + block = UserBlock.order(:id).last + assert_equal 1209600, block.ends_at - block.created_at + end + ## # test the update action def test_update