Skip to content

Commit 96ebebd

Browse files
Merge branch 'main' into tuan/refactor-store
2 parents 6a4613d + 87c27c2 commit 96ebebd

File tree

4 files changed

+37
-4
lines changed

4 files changed

+37
-4
lines changed

cmd/rollkit/commands/run_node.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ func NewRunNodeCmd() *cobra.Command {
5858
return err
5959
}
6060

61-
// use aggregator by default
61+
// use aggregator by default if the flag is not specified explicitly
6262
if !cmd.Flags().Lookup("rollkit.aggregator").Changed {
6363
nodeConfig.Aggregator = true
6464
}

cmd/rollkit/commands/run_node_test.go

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ func TestParseFlags(t *testing.T) {
2323
"--p2p.unconditional_peer_ids", "4,5,6",
2424
"--priv_validator_laddr", "tcp://127.0.0.1:27003",
2525
"--proxy_app", "tcp://127.0.0.1:27004",
26-
"--rollkit.aggregator",
26+
"--rollkit.aggregator=false",
2727
"--rollkit.block_time", "2s",
2828
"--rollkit.da_address", "http://127.0.0.1:27005",
2929
"--rollkit.da_auth_token", "token",
@@ -46,6 +46,7 @@ func TestParseFlags(t *testing.T) {
4646
args := append([]string{"start"}, flags...)
4747

4848
newRunNodeCmd := NewRunNodeCmd()
49+
4950
if err := newRunNodeCmd.ParseFlags(args); err != nil {
5051
t.Errorf("Error: %v", err)
5152
}
@@ -74,7 +75,7 @@ func TestParseFlags(t *testing.T) {
7475
{"UnconditionalPeerIDs", config.P2P.UnconditionalPeerIDs, "4,5,6"},
7576
{"PrivValidatorListenAddr", config.PrivValidatorListenAddr, "tcp://127.0.0.1:27003"},
7677
{"ProxyApp", config.ProxyApp, "tcp://127.0.0.1:27004"},
77-
{"Aggregator", nodeConfig.Aggregator, true},
78+
{"Aggregator", nodeConfig.Aggregator, false},
7879
{"BlockTime", nodeConfig.BlockTime, 2 * time.Second},
7980
{"DAAddress", nodeConfig.DAAddress, "http://127.0.0.1:27005"},
8081
{"DAAuthToken", nodeConfig.DAAuthToken, "token"},
@@ -102,3 +103,33 @@ func TestParseFlags(t *testing.T) {
102103
})
103104
}
104105
}
106+
107+
func TestAggregatorFlagInvariants(t *testing.T) {
108+
flagVariants := [][]string{{
109+
"--rollkit.aggregator=false",
110+
}, {
111+
"--rollkit.aggregator=true",
112+
}, {
113+
"--rollkit.aggregator",
114+
}}
115+
116+
validValues := []bool{false, true, true}
117+
118+
for i, flags := range flagVariants {
119+
args := append([]string{"start"}, flags...)
120+
121+
newRunNodeCmd := NewRunNodeCmd()
122+
123+
if err := newRunNodeCmd.ParseFlags(args); err != nil {
124+
t.Errorf("Error: %v", err)
125+
}
126+
127+
if err := parseFlags(newRunNodeCmd); err != nil {
128+
t.Errorf("Error: %v", err)
129+
}
130+
131+
if nodeConfig.Aggregator != validValues[i] {
132+
t.Errorf("Expected %v, got %v", validValues[i], nodeConfig.Aggregator)
133+
}
134+
}
135+
}

config/config.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,8 @@ func (nc *NodeConfig) GetViperConfig(v *viper.Viper) error {
143143
// This function is called in cosmos-sdk.
144144
func AddFlags(cmd *cobra.Command) {
145145
def := DefaultNodeConfig
146-
cmd.Flags().Bool(FlagAggregator, def.Aggregator, "run node in aggregator mode")
146+
147+
cmd.Flags().BoolVar(&def.Aggregator, FlagAggregator, def.Aggregator, "run node in aggregator mode")
147148
cmd.Flags().Bool(FlagLazyAggregator, def.LazyAggregator, "wait for transactions, don't build empty blocks")
148149
cmd.Flags().String(FlagDAAddress, def.DAAddress, "DA address (host:port)")
149150
cmd.Flags().String(FlagDAAuthToken, def.DAAuthToken, "DA auth token")

config/config_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ func TestViperAndCobra(t *testing.T) {
5252
assert.NoError(cmd.Flags().Set(FlagDANamespace, "0102030405060708"))
5353

5454
nc := DefaultNodeConfig
55+
5556
assert.NoError(nc.GetViperConfig(v))
5657

5758
assert.Equal(true, nc.Aggregator)

0 commit comments

Comments
 (0)