github.com/ChainSafe/chainbridge-core@v1.4.2/chains/evm/cli/admin/admin_test.go (about) 1 package admin 2 3 import ( 4 "testing" 5 6 "github.com/spf13/cobra" 7 "github.com/stretchr/testify/suite" 8 ) 9 10 var ( 11 validAddr = "0xd606A00c1A39dA53EA7Bb3Ab570BBE40b156EB66" 12 invalidAddr = "0xd606A00c1A39dA53EA7Bb3Ab570BBE40b156EXYZ" 13 ) 14 15 type AdminTestSuite struct { 16 suite.Suite 17 } 18 19 func TestAdminTestSuite(t *testing.T) { 20 suite.Run(t, new(AdminTestSuite)) 21 } 22 23 func (s *AdminTestSuite) SetupSuite() { 24 } 25 func (s *AdminTestSuite) TearDownSuite() {} 26 27 func (s *AdminTestSuite) TearDownTest() {} 28 29 func (s *AdminTestSuite) TestValidateAddAdminFlags() { 30 cmd := new(cobra.Command) 31 BindAddAdminFlags(cmd) 32 33 err := cmd.Flag("admin").Value.Set(validAddr) 34 s.Nil(err) 35 err = cmd.Flag("bridge").Value.Set(validAddr) 36 s.Nil(err) 37 38 err = ValidateAddAdminFlags( 39 cmd, 40 []string{}, 41 ) 42 s.Nil(err) 43 } 44 45 func (s *AdminTestSuite) TestValidateAddAdminFlagsInvalidAddresses() { 46 cmd := new(cobra.Command) 47 BindAddAdminFlags(cmd) 48 49 err := cmd.Flag("admin").Value.Set(invalidAddr) 50 s.Nil(err) 51 err = cmd.Flag("bridge").Value.Set(invalidAddr) 52 s.Nil(err) 53 54 err = ValidateAddAdminFlags( 55 cmd, 56 []string{}, 57 ) 58 s.NotNil(err) 59 } 60 61 func (s *AdminTestSuite) TestValidateAddRelayerFlags() { 62 cmd := new(cobra.Command) 63 BindAddRelayerFlags(cmd) 64 65 err := cmd.Flag("relayer").Value.Set(validAddr) 66 s.Nil(err) 67 err = cmd.Flag("bridge").Value.Set(validAddr) 68 s.Nil(err) 69 70 err = ValidateAddRelayerFlags( 71 cmd, 72 []string{}, 73 ) 74 s.Nil(err) 75 } 76 77 func (s *AdminTestSuite) TestValidateAddRelayerFlagsInvalidAddresses() { 78 cmd := new(cobra.Command) 79 BindAddRelayerFlags(cmd) 80 81 err := cmd.Flag("relayer").Value.Set(invalidAddr) 82 s.Nil(err) 83 err = cmd.Flag("bridge").Value.Set(invalidAddr) 84 s.Nil(err) 85 86 err = ValidateAddRelayerFlags( 87 cmd, 88 []string{}, 89 ) 90 s.NotNil(err) 91 } 92 93 func (s *AdminTestSuite) TestValidateGetThresholdFlags() { 94 cmd := new(cobra.Command) 95 BindGetThresholdFlags(cmd) 96 97 err := cmd.Flag("bridge").Value.Set(validAddr) 98 s.Nil(err) 99 100 err = ValidateGetThresholdFlags( 101 cmd, 102 []string{}, 103 ) 104 s.Nil(err) 105 } 106 107 func (s *AdminTestSuite) TestValidateGetThresholdFlagsInvalidAddress() { 108 cmd := new(cobra.Command) 109 BindGetThresholdFlags(cmd) 110 111 err := cmd.Flag("bridge").Value.Set(invalidAddr) 112 s.Nil(err) 113 114 err = ValidateGetThresholdFlags( 115 cmd, 116 []string{}, 117 ) 118 s.NotNil(err) 119 } 120 121 func (s *AdminTestSuite) TestValidateIsRelayerFlags() { 122 cmd := new(cobra.Command) 123 BindIsRelayerFlags(cmd) 124 125 err := cmd.Flag("bridge").Value.Set(validAddr) 126 s.Nil(err) 127 err = cmd.Flag("relayer").Value.Set(validAddr) 128 s.Nil(err) 129 130 err = ValidateIsRelayerFlags( 131 cmd, 132 []string{}, 133 ) 134 s.Nil(err) 135 } 136 137 func (s *AdminTestSuite) TestValidateIsRelayerInvalidAddresses() { 138 cmd := new(cobra.Command) 139 BindIsRelayerFlags(cmd) 140 141 err := cmd.Flag("bridge").Value.Set(invalidAddr) 142 s.Nil(err) 143 err = cmd.Flag("relayer").Value.Set(invalidAddr) 144 s.Nil(err) 145 146 err = ValidateIsRelayerFlags( 147 cmd, 148 []string{}, 149 ) 150 s.NotNil(err) 151 } 152 153 func (s *AdminTestSuite) TestValidatePauseFlags() { 154 cmd := new(cobra.Command) 155 BindPauseFlags(cmd) 156 157 err := cmd.Flag("bridge").Value.Set(validAddr) 158 s.Nil(err) 159 160 err = ValidatePauseFlags( 161 cmd, 162 []string{}, 163 ) 164 s.Nil(err) 165 } 166 167 func (s *AdminTestSuite) TestValidatePauseInvalidAddress() { 168 cmd := new(cobra.Command) 169 BindPauseFlags(cmd) 170 171 err := cmd.Flag("bridge").Value.Set(invalidAddr) 172 s.Nil(err) 173 174 err = ValidatePauseFlags( 175 cmd, 176 []string{}, 177 ) 178 s.NotNil(err) 179 } 180 181 func (s *AdminTestSuite) TestValidateRemoveAdminFlags() { 182 cmd := new(cobra.Command) 183 BindRemoveAdminFlags(cmd) 184 185 err := cmd.Flag("bridge").Value.Set(validAddr) 186 s.Nil(err) 187 err = cmd.Flag("admin").Value.Set(validAddr) 188 s.Nil(err) 189 190 err = ValidateRemoveAdminFlags( 191 cmd, 192 []string{}, 193 ) 194 s.Nil(err) 195 } 196 197 func (s *AdminTestSuite) TestValidateRemoveAdminInvalidAddresses() { 198 cmd := new(cobra.Command) 199 BindRemoveAdminFlags(cmd) 200 201 err := cmd.Flag("bridge").Value.Set(invalidAddr) 202 s.Nil(err) 203 err = cmd.Flag("admin").Value.Set(invalidAddr) 204 s.Nil(err) 205 206 err = ValidateRemoveAdminFlags( 207 cmd, 208 []string{}, 209 ) 210 s.NotNil(err) 211 } 212 213 func (s *AdminTestSuite) TestValidateRemoveRelayerFlags() { 214 cmd := new(cobra.Command) 215 BindRemoveRelayerFlags(cmd) 216 217 err := cmd.Flag("bridge").Value.Set(validAddr) 218 s.Nil(err) 219 err = cmd.Flag("relayer").Value.Set(validAddr) 220 s.Nil(err) 221 222 err = ValidateRemoveRelayerFlags( 223 cmd, 224 []string{}, 225 ) 226 s.Nil(err) 227 } 228 229 func (s *AdminTestSuite) TestValidateRemoveRelayerInvalidAddresses() { 230 cmd := new(cobra.Command) 231 BindRemoveRelayerFlags(cmd) 232 233 err := cmd.Flag("bridge").Value.Set(invalidAddr) 234 s.Nil(err) 235 err = cmd.Flag("relayer").Value.Set(invalidAddr) 236 s.Nil(err) 237 238 err = ValidateRemoveRelayerFlags( 239 cmd, 240 []string{}, 241 ) 242 s.NotNil(err) 243 } 244 245 func (s *AdminTestSuite) TestValidateSetDepositNonceFlags() { 246 cmd := new(cobra.Command) 247 BindSetDepositNonceFlags(cmd) 248 249 err := cmd.Flag("bridge").Value.Set(validAddr) 250 s.Nil(err) 251 252 err = ValidateSetDepositNonceFlags( 253 cmd, 254 []string{}, 255 ) 256 s.Nil(err) 257 } 258 259 func (s *AdminTestSuite) TestValidateSetDepositNonceInvalidAddress() { 260 cmd := new(cobra.Command) 261 BindSetDepositNonceFlags(cmd) 262 263 err := cmd.Flag("bridge").Value.Set(invalidAddr) 264 s.Nil(err) 265 266 err = ValidateSetDepositNonceFlags( 267 cmd, 268 []string{}, 269 ) 270 s.NotNil(err) 271 } 272 273 func (s *AdminTestSuite) TestValidateSetFeeFlags() { 274 cmd := new(cobra.Command) 275 BindSetFeeFlags(cmd) 276 277 err := cmd.Flag("bridge").Value.Set(validAddr) 278 s.Nil(err) 279 280 err = ValidateSetFeeFlags( 281 cmd, 282 []string{}, 283 ) 284 s.Nil(err) 285 } 286 287 func (s *AdminTestSuite) TestValidateSetFeeInvalidAddress() { 288 cmd := new(cobra.Command) 289 BindSetFeeFlags(cmd) 290 291 err := cmd.Flag("bridge").Value.Set(invalidAddr) 292 s.Nil(err) 293 294 err = ValidateSetFeeFlags( 295 cmd, 296 []string{}, 297 ) 298 s.NotNil(err) 299 } 300 301 func (s *AdminTestSuite) TestValidateSetThresholdFlags() { 302 cmd := new(cobra.Command) 303 BindSetThresholdFlags(cmd) 304 305 err := cmd.Flag("bridge").Value.Set(validAddr) 306 s.Nil(err) 307 308 err = ValidateSetThresholdFlags( 309 cmd, 310 []string{}, 311 ) 312 s.Nil(err) 313 } 314 315 func (s *AdminTestSuite) TestValidateSetThresholdInvalidAddress() { 316 cmd := new(cobra.Command) 317 BindSetThresholdFlags(cmd) 318 319 err := cmd.Flag("bridge").Value.Set(invalidAddr) 320 s.Nil(err) 321 322 err = ValidateSetThresholdFlags( 323 cmd, 324 []string{}, 325 ) 326 s.NotNil(err) 327 } 328 329 func (s *AdminTestSuite) TestValidateUnpauseFlags() { 330 cmd := new(cobra.Command) 331 BindUnpauseFlags(cmd) 332 333 err := cmd.Flag("bridge").Value.Set(validAddr) 334 s.Nil(err) 335 336 err = ValidateUnpauseFlags( 337 cmd, 338 []string{}, 339 ) 340 s.Nil(err) 341 } 342 343 func (s *AdminTestSuite) TestValidateUnpauseInvalidAddress() { 344 cmd := new(cobra.Command) 345 BindUnpauseFlags(cmd) 346 347 err := cmd.Flag("bridge").Value.Set(invalidAddr) 348 s.Nil(err) 349 350 err = ValidateUnpauseFlags( 351 cmd, 352 []string{}, 353 ) 354 s.NotNil(err) 355 } 356 357 func (s *AdminTestSuite) TestValidateWithdrawFlags() { 358 cmd := new(cobra.Command) 359 BindWithdrawFlags(cmd) 360 361 err := cmd.Flag("bridge").Value.Set(validAddr) 362 s.Nil(err) 363 err = cmd.Flag("handler").Value.Set(validAddr) 364 s.Nil(err) 365 err = cmd.Flag("token-contract").Value.Set(validAddr) 366 s.Nil(err) 367 err = cmd.Flag("recipient").Value.Set(validAddr) 368 s.Nil(err) 369 err = cmd.Flag("amount").Value.Set("1") 370 s.Nil(err) 371 372 err = ValidateWithdrawFlags( 373 cmd, 374 []string{}, 375 ) 376 s.Nil(err) 377 } 378 379 func (s *AdminTestSuite) TestValidateWithdrawInvalidAddresses() { 380 cmd := new(cobra.Command) 381 BindWithdrawFlags(cmd) 382 383 err := cmd.Flag("bridge").Value.Set(invalidAddr) 384 s.Nil(err) 385 err = cmd.Flag("handler").Value.Set(invalidAddr) 386 s.Nil(err) 387 err = cmd.Flag("token-contract").Value.Set(invalidAddr) 388 s.Nil(err) 389 err = cmd.Flag("recipient").Value.Set(invalidAddr) 390 s.Nil(err) 391 err = cmd.Flag("amount").Value.Set("1") 392 s.Nil(err) 393 394 err = ValidateWithdrawFlags( 395 cmd, 396 []string{}, 397 ) 398 s.NotNil(err) 399 } 400 401 func (s *AdminTestSuite) TestValidateWithdrawAmountTokenConflict() { 402 cmd := new(cobra.Command) 403 BindWithdrawFlags(cmd) 404 405 err := cmd.Flag("bridge").Value.Set(validAddr) 406 s.Nil(err) 407 err = cmd.Flag("handler").Value.Set(validAddr) 408 s.Nil(err) 409 err = cmd.Flag("token-contract").Value.Set(validAddr) 410 s.Nil(err) 411 err = cmd.Flag("recipient").Value.Set(validAddr) 412 s.Nil(err) 413 err = cmd.Flag("amount").Value.Set("1") 414 s.Nil(err) 415 err = cmd.Flag("token").Value.Set("1") 416 s.Nil(err) 417 418 err = ValidateWithdrawFlags( 419 cmd, 420 []string{}, 421 ) 422 s.NotNil(err) 423 }