diff --git a/config/dev.exs b/config/dev.exs index 7e7ae6e1e6..1ed5e82779 100755 --- a/config/dev.exs +++ b/config/dev.exs @@ -100,7 +100,7 @@ config :archethic, Archethic.Networking.Scheduler, interval: "0 * * * * * *" # -----end-of-Networking-dev-configs----- -config :archethic, Archethic.Reward.RewardScheduler, +config :archethic, Archethic.Reward.Scheduler, # At the 30th second interval: "30 * * * * *" diff --git a/config/prod.exs b/config/prod.exs index e3b2d44036..b0a296e0b1 100755 --- a/config/prod.exs +++ b/config/prod.exs @@ -186,7 +186,7 @@ config :archethic, Archethic.OracleChain.Scheduler, # Aggregate chain every day at midnight summary_interval: System.get_env("ARCHETHIC_ORACLE_CHAIN_SUMMARY_INTERVAL", "0 0 0 * * * *") -config :archethic, Archethic.Reward.RewardScheduler, +config :archethic, Archethic.Reward.Scheduler, # Every day at 02:00:00 interval: System.get_env("ARCHETHIC_REWARD_SCHEDULER_INTERVAL", "0 0 2 * * * *") diff --git a/config/test.exs b/config/test.exs index 39d4abbeca..98d31f5657 100755 --- a/config/test.exs +++ b/config/test.exs @@ -115,7 +115,7 @@ config :archethic, Archethic.Mining.PendingTransactionValidation, validate_node_ config :archethic, Archethic.Metrics.Poller, enabled: false config :archethic, Archethic.Metrics.Collector, MockMetricsCollector -config :archethic, Archethic.Reward.RewardScheduler, enabled: false +config :archethic, Archethic.Reward.Scheduler, enabled: false config :archethic, Archethic.SelfRepair.Scheduler, enabled: false, diff --git a/lib/archethic/reward.ex b/lib/archethic/reward.ex index 31c65a8d2a..140364753c 100644 --- a/lib/archethic/reward.ex +++ b/lib/archethic/reward.ex @@ -12,7 +12,7 @@ defmodule Archethic.Reward do alias Archethic.P2P alias Archethic.P2P.Node - alias __MODULE__.RewardScheduler + alias __MODULE__.Scheduler alias Archethic.TransactionChain.Transaction alias Archethic.TransactionChain.TransactionData @@ -38,18 +38,12 @@ defmodule Archethic.Reward do ## Examples - iex> case Reward.new_rewards_mint(2_000_000_000) do - ...> %{ - ...> type: :mint_rewards, - ...> data: %{ - ...> content: "{\\n \\"supply\\":2000000000,\\n \\"type\\":\\"fungible\\",\\n \\"name\\":\\"Mining UCO rewards\\",\\n \\"symbol\\":\\"MUCO\\"\\n}\\n" - ...> } - ...> } -> - ...> :ok - ...> _ -> - ...> :error - ...> end - :ok + iex> %{ + ...> type: :mint_rewards, + ...> data: %{ + ...> content: "{\\n \\"supply\\":2000000000,\\n \\"type\\":\\"fungible\\",\\n \\"name\\":\\"Mining UCO rewards\\",\\n \\"symbol\\":\\"MUCO\\"\\n}\\n" + ...> } + ...> } = Reward.new_rewards_mint(2_000_000_000) """ @spec new_rewards_mint(amount :: non_neg_integer()) :: Transaction.t() def new_rewards_mint(amount) do @@ -99,11 +93,11 @@ defmodule Archethic.Reward do Returns the last date of the rewards scheduling from the network pool """ @spec last_scheduling_date() :: DateTime.t() - defdelegate last_scheduling_date, to: RewardScheduler, as: :last_date + defdelegate last_scheduling_date, to: Scheduler, as: :last_date def config_change(changed_conf) do changed_conf - |> Keyword.get(RewardScheduler) - |> RewardScheduler.config_change() + |> Keyword.get(Scheduler) + |> Scheduler.config_change() end end diff --git a/lib/archethic/reward/reward_scheduler.ex b/lib/archethic/reward/scheduler.ex similarity index 98% rename from lib/archethic/reward/reward_scheduler.ex rename to lib/archethic/reward/scheduler.ex index 7cbc7991da..ee492ffb6d 100644 --- a/lib/archethic/reward/reward_scheduler.ex +++ b/lib/archethic/reward/scheduler.ex @@ -1,4 +1,4 @@ -defmodule Archethic.Reward.RewardScheduler do +defmodule Archethic.Reward.Scheduler do @moduledoc false use GenServer diff --git a/lib/archethic/reward/supervisor.ex b/lib/archethic/reward/supervisor.ex index f0c0918aba..f5567d8884 100644 --- a/lib/archethic/reward/supervisor.ex +++ b/lib/archethic/reward/supervisor.ex @@ -3,7 +3,7 @@ defmodule Archethic.Reward.Supervisor do use Supervisor - alias Archethic.Reward.RewardScheduler + alias Archethic.Reward.Scheduler alias Archethic.Utils @@ -13,7 +13,7 @@ defmodule Archethic.Reward.Supervisor do def init(_) do children = [ - {RewardScheduler, Application.get_env(:archethic, RewardScheduler)} + {Scheduler, Application.get_env(:archethic, Scheduler)} ] Supervisor.init(Utils.configurable_children(children), strategy: :one_for_one) diff --git a/test/archethic/mining/pending_transaction_validation_test.exs b/test/archethic/mining/pending_transaction_validation_test.exs index 86bff1bc61..82317330b5 100644 --- a/test/archethic/mining/pending_transaction_validation_test.exs +++ b/test/archethic/mining/pending_transaction_validation_test.exs @@ -9,7 +9,7 @@ defmodule Archethic.Mining.PendingTransactionValidationTest do alias Archethic.SharedSecrets.MemTables.NetworkLookup - alias Archethic.Reward.RewardScheduler + alias Archethic.Reward.Scheduler alias Archethic.P2P alias Archethic.P2P.Message.FirstPublicKey @@ -359,7 +359,7 @@ defmodule Archethic.Mining.PendingTransactionValidationTest do NetworkLookup.set_network_pool_address(address) - RewardScheduler.start_link(interval: "0 * * * * *") + Scheduler.start_link(interval: "0 * * * * *") MockDB |> stub(:get_latest_burned_fees, fn -> 300_000_000 end) @@ -391,7 +391,7 @@ defmodule Archethic.Mining.PendingTransactionValidationTest do NetworkLookup.set_network_pool_address(address) - RewardScheduler.start_link(interval: "0 * * * * *") + Scheduler.start_link(interval: "0 * * * * *") MockDB |> stub(:get_latest_burned_fees, fn -> 200_000_000 end) @@ -424,7 +424,7 @@ defmodule Archethic.Mining.PendingTransactionValidationTest do NetworkLookup.set_network_pool_address(:crypto.strong_rand_bytes(32)) - RewardScheduler.start_link(interval: "0 * * * * *") + Scheduler.start_link(interval: "0 * * * * *") MockDB |> stub(:get_latest_burned_fees, fn -> 300_000_000 end) diff --git a/test/archethic/reward/reward_scheduler_test.exs b/test/archethic/reward/scheduler_test.exs similarity index 85% rename from test/archethic/reward/reward_scheduler_test.exs rename to test/archethic/reward/scheduler_test.exs index ce5b6ca36c..a469e78eea 100644 --- a/test/archethic/reward/reward_scheduler_test.exs +++ b/test/archethic/reward/scheduler_test.exs @@ -1,4 +1,4 @@ -defmodule Archethic.Reward.RewardSchedulerTest do +defmodule Archethic.Reward.SchedulerTest do use ArchethicCase, async: false alias Archethic.Crypto @@ -7,7 +7,7 @@ defmodule Archethic.Reward.RewardSchedulerTest do alias Archethic.P2P.Node alias Archethic.P2P.Message.StartMining - alias Archethic.Reward.RewardScheduler + alias Archethic.Reward.Scheduler import Mox @@ -27,7 +27,7 @@ defmodule Archethic.Reward.RewardSchedulerTest do MockDB |> stub(:get_latest_burned_fees, fn -> 0 end) - assert {:ok, pid} = RewardScheduler.start_link(interval: "*/1 * * * * *") + assert {:ok, pid} = Scheduler.start_link(interval: "*/1 * * * * *") assert %{interval: "*/1 * * * * *"} = :sys.get_state(pid) @@ -57,7 +57,7 @@ defmodule Archethic.Reward.RewardSchedulerTest do send(me, type) end) - assert {:ok, pid} = RewardScheduler.start_link(interval: "*/1 * * * * *") + assert {:ok, pid} = Scheduler.start_link(interval: "*/1 * * * * *") send( pid, @@ -83,7 +83,7 @@ defmodule Archethic.Reward.RewardSchedulerTest do send(me, type) end) - assert {:ok, pid} = RewardScheduler.start_link(interval: "*/1 * * * * *") + assert {:ok, pid} = Scheduler.start_link(interval: "*/1 * * * * *") send( pid,