From 198405dd5ebe78fea094c81fe6d90768c2b6c8ab Mon Sep 17 00:00:00 2001 From: Anton Khorev Date: Wed, 30 Apr 2025 07:33:31 +0300 Subject: [PATCH] Test closing changeset twice --- .../api/changesets/closes_controller_test.rb | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/test/controllers/api/changesets/closes_controller_test.rb b/test/controllers/api/changesets/closes_controller_test.rb index 78e11d0f7..ca735469a 100644 --- a/test/controllers/api/changesets/closes_controller_test.rb +++ b/test/controllers/api/changesets/closes_controller_test.rb @@ -84,6 +84,31 @@ module Api assert_not_predicate changeset.reload, :open? end + def test_update_twice + user = create(:user) + auth_header = bearer_authorization_header user + + freeze_time do + changeset = create(:changeset, :user => user) + + travel 30.minutes + put api_changeset_close_path(changeset), :headers => auth_header + + assert_response :success + changeset.reload + assert_not_predicate changeset, :open? + assert_equal 0.minutes.ago, changeset.closed_at + + travel 30.minutes + put api_changeset_close_path(changeset), :headers => auth_header + + assert_response :conflict + changeset.reload + assert_not_predicate changeset, :open? + assert_equal 30.minutes.ago, changeset.closed_at + end + end + ## # test that you can't close using another method def test_update_method_invalid -- 2.39.5