Skip to content

Commit 3b74ca8

Browse files
authored
Merge pull request #46 from rated-network/test-fixes
Some test fixes
2 parents 4a20465 + 5dcfd51 commit 3b74ca8

File tree

4 files changed

+57
-25
lines changed

4 files changed

+57
-25
lines changed

src/db/memory/memory.go

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,14 @@ import (
1010
"github.com/libp2p/go-libp2p-core/peer"
1111
"github.com/migalabs/armiarma/src/db/models"
1212
"github.com/pkg/errors"
13+
"github.com/sirupsen/logrus"
1314
)
1415

1516
var (
1617
MemoryType = "MemoryDB"
18+
log = logrus.WithField(
19+
"module", MemoryType,
20+
)
1721
)
1822

1923
// PeerStoreMemory save the peer's data in RAM.
@@ -31,7 +35,7 @@ func NewMemoryDB() MemoryDB {
3135
m: &m,
3236
startTime: time.Now(),
3337
}
34-
Log.Infof("generated new MemoryDB")
38+
log.Infof("generated new MemoryDB")
3539
return mdb
3640
}
3741

@@ -109,15 +113,19 @@ func (m MemoryDB) GetPeerENR(peerID string) (*enode.Node, error) {
109113
if !ok {
110114
return nil, fmt.Errorf("No peer was found under ID %s", peerID)
111115
}
112-
return p.GetBlockchainNode()
116+
enr, ok := p.GetAtt("enr")
117+
if !ok {
118+
return nil, fmt.Errorf("No ENR was found for peer %s", peerID)
119+
}
120+
return enode.MustParse(enr.(string)), nil
113121
}
114122

115123
// ExportToCSV
116124
// This method will export the whole peerstore into a CSV file.
117125
// @param filePath file where to dump the CSV lines (create if it does not exist).
118126
// @return an error if there was.
119127
func (m MemoryDB) ExportToCSV(filePath string) error {
120-
Log.Info("Exporting metrics to csv: ", filePath)
128+
log.Info("Exporting metrics to csv: ", filePath)
121129
csvFile, err := os.Create(filePath)
122130
if err != nil {
123131
return errors.Wrap(err, "error opening the file "+filePath)

src/db/models/peer_test.go

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -96,12 +96,12 @@ func Test_FetchPeerInfoFromNewPeer(t *testing.T) {
9696

9797
// peerHostInfo
9898
peer2HostInfo := NewPeer("Peer2")
99-
peer2HostInfo.NodeId = "Node2"
99+
peer2HostInfo.SetAtt("nodeid", "Node2")
100100
peer2HostInfo.UserAgent = "Prysm/v0.0.0"
101101
peer2HostInfo.ClientName = "Prysm"
102102
peer2HostInfo.ClientVersion = "v0.0.0"
103103
peer2HostInfo.ClientOS = "Linux"
104-
peer2HostInfo.Pubkey = "PubKey"
104+
peer2HostInfo.SetAtt("pubkey", "PubKey")
105105
peer2HostInfo.AddMAddr("/ip4/95.169.232.98/tcp/9000")
106106
peer2HostInfo.Ip = "95.169.232.98"
107107
peer2HostInfo.City = "City1"
@@ -112,13 +112,17 @@ func Test_FetchPeerInfoFromNewPeer(t *testing.T) {
112112
peerBase.FetchPeerInfoFromNewPeer(peer2HostInfo)
113113

114114
require.Equal(t, peerBase.PeerId, "Peer2")
115-
require.Equal(t, peerBase.NodeId, "Node2")
115+
nodeid, ok := peerBase.GetAtt("nodeid")
116+
require.True(t, ok)
117+
require.Equal(t, nodeid, "Node2")
116118
require.Equal(t, peerBase.UserAgent, "Prysm/v0.0.0")
117119
require.Equal(t, peerBase.ExtractPublicAddr().String(), "/ip4/95.169.232.98/tcp/9000")
118120
require.Equal(t, peerBase.Ip, "95.169.232.98")
119121
require.Equal(t, peerBase.Country, "Country1")
120122
require.Equal(t, peerBase.City, "City1")
121-
require.Equal(t, peerBase.Pubkey, "PubKey")
123+
pubkey, ok := peerBase.GetAtt("pubkey")
124+
require.True(t, ok)
125+
require.Equal(t, pubkey, "PubKey")
122126
require.Equal(t, peerBase.ProtocolVersion, "TryProtocol")
123127
require.Equal(t, peerBase.Protocols[0], "Protocol1")
124128
require.Equal(t, len(peerBase.Protocols), 1)
@@ -175,12 +179,14 @@ func Test_FetchPeerInfoFromNewPeer(t *testing.T) {
175179
peer5NotIdentified := NewPeer("Peer5")
176180
peer5NotIdentified.MetadataSucceed = false
177181
peer5NotIdentified.MetadataRequest = false
178-
peer5NotIdentified.BlockchainNodeENR = "test"
182+
peer5NotIdentified.SetAtt("enr", "test")
179183

180184
peerBase.FetchPeerInfoFromNewPeer(peer5NotIdentified)
181185
require.Equal(t, peerBase.MetadataSucceed, true)
182186
require.Equal(t, peerBase.MetadataRequest, true)
183-
require.Equal(t, peerBase.BlockchainNodeENR, "test")
187+
enr, ok := peerBase.GetAtt("enr")
188+
require.True(t, ok)
189+
require.Equal(t, enr, "test")
184190

185191
/*peerMod.MetadataRequest = true
186192
peerMod.MetadataSucceed = false
@@ -203,10 +209,11 @@ func Test_FetchPeerInfoFromNewPeer(t *testing.T) {
203209

204210
func Test_GetEnodeFromENR(t *testing.T) {
205211
// generate base peer
212+
enr := "enr:-Ku4QP2xDnEtUXIjzJ_DhlCRN9SN99RYQPJL92TMlSv7U5C1YnYLjwOQHgZIUXw6c-BvRg2Yc2QsZxxoS_pPRVe0yK8Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhBLf22SJc2VjcDI1NmsxoQMeFF5GrS7UZpAH2Ly84aLK-TyvH-dRo0JM1i8yygH50YN1ZHCCJxA"
213+
206214
peerBase := NewPeer("test")
207-
peerBase.BlockchainNodeENR = "enr:-Ku4QP2xDnEtUXIjzJ_DhlCRN9SN99RYQPJL92TMlSv7U5C1YnYLjwOQHgZIUXw6c-BvRg2Yc2QsZxxoS_pPRVe0yK8Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhBLf22SJc2VjcDI1NmsxoQMeFF5GrS7UZpAH2Ly84aLK-TyvH-dRo0JM1i8yygH50YN1ZHCCJxA"
215+
peerBase.SetAtt("enr", enr)
208216

209-
test_node, _ := peerBase.GetBlockchainNode()
210-
require.Equal(t, test_node.String(), "enr:-Ku4QP2xDnEtUXIjzJ_DhlCRN9SN99RYQPJL92TMlSv7U5C1YnYLjwOQHgZIUXw6c-BvRg2Yc2QsZxxoS_pPRVe0yK8Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhBLf22SJc2VjcDI1NmsxoQMeFF5GrS7UZpAH2Ly84aLK-TyvH-dRo0JM1i8yygH50YN1ZHCCJxA")
211-
require.NotEqual(t, test_node.String(), "enr:-Ku4QP2xDnEtUXIjzJ_DhlCRN9SN99RYQPJL92TMlSv7U5C1YnYLjwOQHgZIUXw6c-BvRg2Yc2QsZxxoS_pPRVe0yK8Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpD1pf1CAAAAAP__________gmlkgnY0gmlwhBLf22SJc2VjcDI1NmsxoQMeFF5GrS7UZpAH2Ly84aLK-TyvH-dRo0JM1i8yygH50YN1ZHCCJxB")
217+
test_node, _ := peerBase.GetAtt("enr")
218+
require.Equal(t, test_node, enr)
212219
}

src/db/postgresql/eth2_client_diversity_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ import (
1212
func TestClientDiversityInsert(t *testing.T) {
1313
logrus.SetLevel(logrus.DebugLevel)
1414
url := "postgres://armiarmacrawler:ar_Mi_arm4@localhost:5432/armiarmadb"
15-
psqlDB, err := ConnectToDB(context.Background(), url)
15+
ethmodel := NewEth2Model("eth2")
16+
psqlDB, err := ConnectToDB(context.Background(), url, &ethmodel)
1617
require.Equal(t, nil, err)
1718

1819
// create the ClientDiversity obj for adding it to the SQL

src/db/postgresql/eth2_peer_test.go

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,16 @@ import (
77

88
"github.com/migalabs/armiarma/src/db/models"
99
"github.com/migalabs/armiarma/src/utils"
10+
1011
//"github.com/sirupsen/logrus"
1112
"github.com/stretchr/testify/require"
1213
)
1314

1415
func TestPeerLoadAndStore(t *testing.T) {
1516
//logrus.SetLevel(logrus.DebugLevel)
1617
url := "postgres://armiarmacrawler:ar_Mi_arm4@localhost:5432/armiarmadb"
17-
psqlDB, err := ConnectToDB(context.Background(), url)
18+
ethmodel := NewEth2Model("eth2")
19+
psqlDB, err := ConnectToDB(context.Background(), url, &ethmodel)
1820
require.Equal(t, nil, err)
1921

2022
msgMet := models.MessageMetric{
@@ -35,13 +37,10 @@ func TestPeerLoadAndStore(t *testing.T) {
3537
// generate first peer
3638
peer1 := models.Peer{
3739
PeerId: "Peer1",
38-
Pubkey: "ASWDSFAWSF",
39-
NodeId: "Node1",
4040
UserAgent: "TestPeer",
4141
ClientName: "TestClient",
4242
ClientOS: "linux",
4343
ClientVersion: "v1.0.0",
44-
BlockchainNodeENR: "AWAW123111231J231K23JH123K12",
4544
Ip: "123.12.12.12",
4645
Country: "Spain",
4746
CountryCode: "ES",
@@ -65,8 +64,12 @@ func TestPeerLoadAndStore(t *testing.T) {
6564
MetadataSucceed: true,
6665
LastExport: 123123123,
6766
MessageMetrics: make(map[string]models.MessageMetric),
68-
BeaconStatus: bStatus,
6967
}
68+
peer1.SetAtt("enr", "AWAW123111231J231K23JH123K12")
69+
peer1.SetAtt("pubkey", "ASWDSFAWSF")
70+
peer1.SetAtt("nodeid", "Node1")
71+
peer1.SetAtt("beaconstatus", bStatus)
72+
7073
// generate multiaddres
7174
addreses := []string{"/ip4/51.89.42.176/tcp/9000", "/ip4/123.123.123.123/tcp/9000"}
7275
for _, ma := range addreses {
@@ -88,13 +91,22 @@ func TestPeerLoadAndStore(t *testing.T) {
8891
require.Equal(t, true, ok)
8992

9093
require.Equal(t, readPeer.PeerId, peer1.PeerId)
91-
require.Equal(t, readPeer.Pubkey, peer1.Pubkey)
92-
require.Equal(t, readPeer.NodeId, peer1.NodeId)
94+
95+
pubkey, ok := readPeer.GetAtt("pubkey")
96+
require.True(t, ok)
97+
require.Equal(t, pubkey, "ASWDSFAWSF")
98+
99+
nodeid, ok := readPeer.GetAtt("nodeid")
100+
require.True(t, ok)
101+
require.Equal(t, nodeid, "Node1")
102+
93103
require.Equal(t, readPeer.UserAgent, peer1.UserAgent)
94104
require.Equal(t, readPeer.ClientName, peer1.ClientName)
95105
require.Equal(t, readPeer.ClientOS, peer1.ClientOS)
96106
require.Equal(t, readPeer.ClientVersion, peer1.ClientVersion)
97-
require.Equal(t, readPeer.BlockchainNodeENR, peer1.BlockchainNodeENR)
107+
enr, ok := readPeer.GetAtt("enr")
108+
require.True(t, ok)
109+
require.Equal(t, enr, "AWAW123111231J231K23JH123K12")
98110

99111
require.Equal(t, readPeer.Ip, peer1.Ip)
100112
require.Equal(t, readPeer.Country, peer1.Country)
@@ -122,7 +134,9 @@ func TestPeerLoadAndStore(t *testing.T) {
122134

123135
require.Equal(t, readPeer.LastExport, peer1.LastExport)
124136

125-
require.Equal(t, bStatus, readPeer.BeaconStatus)
137+
readStatus, ok := readPeer.GetAtt("beaconstatus")
138+
require.True(t, ok)
139+
require.Equal(t, readStatus, bStatus)
126140

127141
require.Equal(t, len(readPeer.MessageMetrics), 2)
128142
require.Equal(t, readPeer.MessageMetrics["testTopic"], msgMet)
@@ -152,7 +166,8 @@ func parseTime(strTime string, t *testing.T) time.Time {
152166
func TestLastToolActivity(t *testing.T) {
153167
//logrus.SetLevel(logrus.DebugLevel)
154168
url := "postgres://armiarmacrawler:ar_Mi_arm4@localhost:5432/armiarmadb"
155-
psqlDB, err := ConnectToDB(context.Background(), url)
169+
ethmodel := NewEth2Model("eth2")
170+
psqlDB, err := ConnectToDB(context.Background(), url, &ethmodel)
156171
require.Equal(t, nil, err)
157172

158173
// generate first peer
@@ -191,7 +206,8 @@ func TestLastToolActivity(t *testing.T) {
191206
func TestPeerConnectedCheck(t *testing.T) {
192207
//logrus.SetLevel(logrus.DebugLevel)
193208
url := "postgres://armiarmacrawler:ar_Mi_arm4@localhost:5432/armiarmadb"
194-
psqlDB, err := ConnectToDB(context.Background(), url)
209+
ethmodel := NewEth2Model("eth2")
210+
psqlDB, err := ConnectToDB(context.Background(), url, &ethmodel)
195211
require.Equal(t, nil, err)
196212

197213
// generate first peer

0 commit comments

Comments
 (0)