Skip to content

Commit db303e6

Browse files
committed
derive yojson for structs in test_config and runtime_config
1 parent 86e41e4 commit db303e6

File tree

2 files changed

+40
-35
lines changed

2 files changed

+40
-35
lines changed

src/lib/runtime_config/runtime_config.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1072,7 +1072,7 @@ module Proof_keys = struct
10721072
; account_creation_fee : Currency.Fee.Stable.Latest.t option
10731073
; fork : Fork_config.t option
10741074
}
1075-
[@@deriving bin_io_unversioned]
1075+
[@@deriving bin_io_unversioned, yojson]
10761076

10771077
let make ?level ?sub_windows_per_window ?ledger_depth ?work_delay
10781078
?block_window_duration_ms ?transaction_capacity ?coinbase_amount

src/lib/testing/integration_test_lib/test_config.ml

Lines changed: 39 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,10 @@ module Test_account = struct
1414
{ account_name : string
1515
; balance : string
1616
; timing : Mina_base.Account_timing.t
17-
; permissions : Mina_base.Permissions.t option
18-
; zkapp : Mina_base.Zkapp_account.t option
17+
; permissions : Mina_base.Permissions.t option [@default None]
18+
; zkapp : Mina_base.Zkapp_account.t option [@default None]
1919
}
20+
[@@deriving to_yojson]
2021

2122
let create ~account_name ~balance ?timing ?permissions ?zkapp () =
2223
{ account_name
@@ -36,13 +37,14 @@ module Epoch_data = struct
3637
module Data = struct
3738
(* the seed is a field value in Base58Check format *)
3839
type t = { epoch_ledger : Test_account.t list; epoch_seed : string }
40+
[@@deriving to_yojson]
3941
end
4042

41-
type t = { staking : Data.t; next : Data.t option }
43+
type t = { staking : Data.t; next : Data.t option } [@@deriving to_yojson]
4244
end
4345

4446
module Block_producer_node = struct
45-
type t = { node_name : string; account_name : string }
47+
type t = { node_name : string; account_name : string } [@@deriving to_yojson]
4648
end
4749

4850
module Snark_coordinator_node = struct
@@ -57,36 +59,6 @@ type constants =
5759
}
5860
[@@deriving to_yojson]
5961

60-
type t =
61-
{ requires_graphql : bool
62-
(* temporary flag to enable/disable graphql ingress deployments *)
63-
(* testnet topography *)
64-
; genesis_ledger : Test_account.t list
65-
; epoch_data : Epoch_data.t option
66-
; block_producers : Block_producer_node.t list
67-
; snark_coordinator : Snark_coordinator_node.t option
68-
; snark_worker_fee : string
69-
; num_archive_nodes : int
70-
; log_precomputed_blocks : bool
71-
; start_filtered_logs : string list
72-
(* ; num_plain_nodes : int *)
73-
(* blockchain constants *)
74-
; proof_config : Runtime_config.Proof_keys.t
75-
; k : int
76-
; delta : int
77-
; slots_per_epoch : int
78-
; slots_per_sub_window : int
79-
; grace_period_slots : int
80-
; txpool_max_size : int
81-
; slot_tx_end : int option
82-
; slot_chain_end : int option
83-
; hard_fork_genesis_slot_delta : int option
84-
; network_id : string option
85-
; block_window_duration_ms : int
86-
; transaction_capacity_log_2 : int
87-
; signature_kind : Mina_signature_kind.t
88-
}
89-
9062
let proof_config_default : Runtime_config.Proof_keys.t =
9163
{ level = Some Full
9264
; sub_windows_per_window = None
@@ -107,6 +79,39 @@ let proof_config_default : Runtime_config.Proof_keys.t =
10779
}
10880
}
10981

82+
type t =
83+
{ requires_graphql : bool
84+
[@default true]
85+
(* temporary flag to enable/disable graphql ingress deployments *)
86+
(* testnet topography *)
87+
; genesis_ledger : Test_account.t list
88+
; epoch_data : Epoch_data.t option [@default None]
89+
; block_producers : Block_producer_node.t list
90+
; snark_coordinator : Snark_coordinator_node.t option [@default None]
91+
; snark_worker_fee : string [@default "0.025"]
92+
; num_archive_nodes : int [@default 0]
93+
; log_precomputed_blocks : bool [@default false]
94+
; start_filtered_logs : string list
95+
[@default []]
96+
(* ; num_plain_nodes : int *)
97+
(* blockchain constants *)
98+
; proof_config : Runtime_config.Proof_keys.t [@default proof_config_default]
99+
; k : int [@default 159]
100+
; delta : int [@default 0]
101+
; slots_per_epoch : int [@default 3 * 8 * 20]
102+
; slots_per_sub_window : int [@default 2]
103+
; grace_period_slots : int [@default 140]
104+
; txpool_max_size : int [@default 3_000]
105+
; slot_tx_end : int option [@default None]
106+
; slot_chain_end : int option [@default None]
107+
; hard_fork_genesis_slot_delta : int option [@default None]
108+
; network_id : string option [@default None]
109+
; block_window_duration_ms : int [@default 0]
110+
; transaction_capacity_log_2 : int [@default 3]
111+
; signature_kind : Mina_signature_kind.t [@default Testnet]
112+
}
113+
[@@deriving to_yojson]
114+
110115
let log_filter_of_event_type ev_existential =
111116
let open Event_type in
112117
let (Event_type ev_type) = ev_existential in

0 commit comments

Comments
 (0)