mirror of
https://github.com/fluencelabs/tendermint
synced 2025-07-30 19:51:58 +00:00
[tm-monitor] extract lib to monitor/ dir
because tm-bench needs these structures
This commit is contained in:
95
tm-monitor/monitor/network_test.go
Normal file
95
tm-monitor/monitor/network_test.go
Normal file
@@ -0,0 +1,95 @@
|
||||
package monitor_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
tmtypes "github.com/tendermint/tendermint/types"
|
||||
monitor "github.com/tendermint/tools/tm-monitor/monitor"
|
||||
)
|
||||
|
||||
func TestNetworkNewBlock(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
|
||||
n.NewBlock(tmtypes.Header{Height: 5, NumTxs: 100})
|
||||
assert.Equal(uint64(5), n.Height)
|
||||
assert.Equal(0.0, n.AvgBlockTime)
|
||||
assert.Equal(0.0, n.AvgTxThroughput)
|
||||
}
|
||||
|
||||
func TestNetworkNewBlockLatency(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
|
||||
n.NewBlockLatency(9000000.0) // nanoseconds
|
||||
assert.Equal(0.0, n.AvgBlockLatency)
|
||||
}
|
||||
|
||||
func TestNetworkNodeIsDownThenOnline(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
n.NewNode("test")
|
||||
|
||||
n.NodeIsDown("test")
|
||||
assert.Equal(0, n.NumNodesMonitoredOnline)
|
||||
assert.Equal(monitor.Dead, n.Health)
|
||||
n.NodeIsDown("test")
|
||||
assert.Equal(0, n.NumNodesMonitoredOnline)
|
||||
|
||||
n.NodeIsOnline("test")
|
||||
assert.Equal(1, n.NumNodesMonitoredOnline)
|
||||
assert.Equal(monitor.ModerateHealth, n.Health)
|
||||
n.NodeIsOnline("test")
|
||||
assert.Equal(1, n.NumNodesMonitoredOnline)
|
||||
}
|
||||
|
||||
func TestNetworkNewNode(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
assert.Equal(0, n.NumNodesMonitored)
|
||||
assert.Equal(0, n.NumNodesMonitoredOnline)
|
||||
n.NewNode("test")
|
||||
assert.Equal(1, n.NumNodesMonitored)
|
||||
assert.Equal(1, n.NumNodesMonitoredOnline)
|
||||
}
|
||||
|
||||
func TestNetworkNodeDeleted(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
n.NewNode("test")
|
||||
n.NodeDeleted("test")
|
||||
assert.Equal(0, n.NumNodesMonitored)
|
||||
assert.Equal(0, n.NumNodesMonitoredOnline)
|
||||
}
|
||||
|
||||
func TestNetworkGetHealthString(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
assert.Equal("full", n.GetHealthString())
|
||||
n.Health = monitor.ModerateHealth
|
||||
assert.Equal("moderate", n.GetHealthString())
|
||||
n.Health = monitor.Dead
|
||||
assert.Equal("dead", n.GetHealthString())
|
||||
}
|
||||
|
||||
func TestNetworkUptime(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
assert.Equal(100.0, n.Uptime())
|
||||
}
|
||||
|
||||
func TestNetworkStartTime(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
n := monitor.NewNetwork()
|
||||
assert.True(n.StartTime().Before(time.Now()))
|
||||
}
|
Reference in New Issue
Block a user