@@ -416,17 +416,41 @@ relays:
416416}
417417
418418func TestMergeRelayConfigs_DuplicateDetection (t * testing.T ) {
419- cliRelay , err := types .NewRelayEntry ("https://0x9000009807ed12c1f08bf4e81c6da3ba8e3fc3d953898ce0102433094e5f22f21102ec057841fcb81978ed1ea0fa8246@relay.example.com" )
419+ relay , err := types .NewRelayEntry ("https://0x9000009807ed12c1f08bf4e81c6da3ba8e3fc3d953898ce0102433094e5f22f21102ec057841fcb81978ed1ea0fa8246@relay.example.com" )
420420 require .NoError (t , err )
421421
422+ t .Run ("Error when no relays in cli or config" , func (t * testing.T ) {
423+ _ , err := MergeRelayConfigs ([]types.RelayEntry {}, map [string ]types.RelayConfig {})
424+ require .Error (t , err )
425+ require .ErrorIs (t , err , errNoRelaysSpecified )
426+ })
427+
428+ t .Run ("Success with config only and empty cli relays" , func (t * testing.T ) {
429+ configMap := map [string ]types.RelayConfig {
430+ relay .String (): {
431+ RelayEntry : relay ,
432+ EnableTimingGames : true ,
433+ },
434+ }
435+ configs , err := MergeRelayConfigs ([]types.RelayEntry {}, configMap )
436+ require .NoError (t , err )
437+ require .Len (t , configs , 1 )
438+ })
439+
440+ t .Run ("Success with cli relays only and empty config map" , func (t * testing.T ) {
441+ configs , err := MergeRelayConfigs ([]types.RelayEntry {relay }, map [string ]types.RelayConfig {})
442+ require .NoError (t , err )
443+ require .Len (t , configs , 1 )
444+ })
445+
422446 t .Run ("Error when same relay in both CLI and config" , func (t * testing.T ) {
423447 configMap := map [string ]types.RelayConfig {
424- cliRelay .String (): {
425- RelayEntry : cliRelay ,
448+ relay .String (): {
449+ RelayEntry : relay ,
426450 EnableTimingGames : true ,
427451 },
428452 }
429- _ , err := MergeRelayConfigs ([]types.RelayEntry {cliRelay }, configMap )
453+ _ , err := MergeRelayConfigs ([]types.RelayEntry {relay }, configMap )
430454 require .Error (t , err )
431455 require .Contains (t , err .Error (), "relay is specified in both cli flags and config file" )
432456 })
@@ -442,21 +466,21 @@ func TestMergeRelayConfigs_DuplicateDetection(t *testing.T) {
442466 },
443467 }
444468
445- configs , err := MergeRelayConfigs ([]types.RelayEntry {cliRelay }, configMap )
469+ configs , err := MergeRelayConfigs ([]types.RelayEntry {relay }, configMap )
446470 require .NoError (t , err )
447471 require .Len (t , configs , 2 )
448472 })
449473
450474 t .Run ("Success with CLI only" , func (t * testing.T ) {
451- configs , err := MergeRelayConfigs ([]types.RelayEntry {cliRelay }, map [string ]types.RelayConfig {})
475+ configs , err := MergeRelayConfigs ([]types.RelayEntry {relay }, map [string ]types.RelayConfig {})
452476 require .NoError (t , err )
453477 require .Len (t , configs , 1 )
454478 })
455479
456480 t .Run ("Success with config only" , func (t * testing.T ) {
457481 configMap := map [string ]types.RelayConfig {
458- cliRelay .String (): {
459- RelayEntry : cliRelay ,
482+ relay .String (): {
483+ RelayEntry : relay ,
460484 EnableTimingGames : true ,
461485 },
462486 }
0 commit comments