public void MetricsGossip_must_merge_peer_metrics()
{
var m1 = new NodeMetrics(new Address("akka.tcp", "sys", "a", 2554), StandardMetrics.NewTimestamp(),
_collector.Sample().Metrics);
var m2 = new NodeMetrics(new Address("akka.tcp", "sys", "a", 2555), StandardMetrics.NewTimestamp(),
_collector.Sample().Metrics);
var g1 = MetricsGossip.Empty + m1 + m2;
g1.Nodes.Count.ShouldBe(2);
var beforeMergeNodes = g1.Nodes;
var m2Updated = m2.Copy(metrics: _collector.Sample().Metrics, timestamp: m2.Timestamp + 1000);
var g2 = g1 + m2Updated; //merge peers
g2.Nodes.Count.ShouldBe(2);
g2.NodeMetricsFor(m1.Address).Metrics.ShouldBe(m1.Metrics);
g2.NodeMetricsFor(m2.Address).Metrics.ShouldBe(m2.Metrics);
foreach (var peer in g2.Nodes)
{
if(peer.Address == m2.Address)
peer.Timestamp.ShouldBe(m2Updated.Timestamp);
}
}