Skip to content

Commit

Permalink
go-ipfs-config: Merge pull request ipfs#37 from ipfs/fix/formatting-b…
Browse files Browse the repository at this point in the history
…ootstrappers

fix string formatting of bootstrap peers
  • Loading branch information
Stebalien committed Jun 1, 2019
2 parents 64343a4 + 3a18674 commit cae2eaa
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 3 deletions.
13 changes: 10 additions & 3 deletions config/bootstrap_peers.go
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,16 @@ func ParseBootstrapPeers(addrs []string) ([]peer.AddrInfo, error) {
// BootstrapPeerStrings formats a list of AddrInfos as a bootstrap peer list
// suitable for serialization.
func BootstrapPeerStrings(bps []peer.AddrInfo) []string {
bpss := make([]string, len(bps))
for i, p := range bps {
bpss[i] = p.String()
bpss := make([]string, 0, len(bps))
for _, pi := range bps {
addrs, err := peer.AddrInfoToP2pAddrs(&pi)
if err != nil {
// programmer error.
panic(err)
}
for _, addr := range addrs {
bpss = append(bpss, addr.String())
}
}
return bpss
}
24 changes: 24 additions & 0 deletions config/bootstrap_peers_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package config

import (
"sort"
"testing"
)

func TestBoostrapPeerStrings(t *testing.T) {
parsed, err := ParseBootstrapPeers(DefaultBootstrapAddresses)
if err != nil {
t.Fatal(err)
}

formatted := BootstrapPeerStrings(parsed)
sort.Strings(formatted)
expected := append([]string{}, DefaultBootstrapAddresses...)
sort.Strings(expected)

for i, s := range formatted {
if expected[i] != s {
t.Fatalf("expected %s, %s", expected[i], s)
}
}
}

0 comments on commit cae2eaa

Please sign in to comment.