diff --git a/lib/tasks/assing_auction_platform_type.rake b/lib/tasks/assing_auction_platform_type.rake new file mode 100644 index 000000000..aaa3e54be --- /dev/null +++ b/lib/tasks/assing_auction_platform_type.rake @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +namespace :auction do + desc 'Check closed disputes with expired_at in the Past' + task assign_platform_type: :environment do + auctions = Auction.where(platform: nil) + + auctions.each do |auction| + auction.update(platform: :auto) + end + end +end diff --git a/test/tasks/assign_auction_platform_type_test.rb b/test/tasks/assign_auction_platform_type_test.rb new file mode 100644 index 000000000..cd0d10917 --- /dev/null +++ b/test/tasks/assign_auction_platform_type_test.rb @@ -0,0 +1,27 @@ +require 'test_helper' + +class AssignAuctionPlatformTypeTest < ActiveSupport::TestCase + setup do + @auction_one = auctions(:one) + @auction_two = auctions(:idn) + end + + def test_output + assert_nil @auction_one.platform + assert_nil @auction_two.platform + + run_task + + @auction_one.reload + @auction_two.reload + + assert_equal @auction_one.platform, "auto" + assert_equal @auction_two.platform, "auto" + end + + private + + def run_task + Rake::Task['auction:assign_platform_type'].execute + end +end