mirror of
https://github.com/weaveworks/scope.git
synced 2026-03-03 02:00:43 +00:00
Merge pull request #706 from weaveworks/656-unconnected
Filter nodes that are only connected to themselves.
This commit is contained in:
@@ -22,7 +22,8 @@ func (c CustomRenderer) Render(rpt report.Report) RenderableNodes {
|
||||
}
|
||||
|
||||
// ColorConnected colors nodes with the IsConnected key if
|
||||
// they have edges to or from them.
|
||||
// they have edges to or from them. Edges to/from yourself
|
||||
// are not counted here (see #656).
|
||||
func ColorConnected(r Renderer) Renderer {
|
||||
return CustomRenderer{
|
||||
Renderer: r,
|
||||
@@ -35,9 +36,11 @@ func ColorConnected(r Renderer) Renderer {
|
||||
continue
|
||||
}
|
||||
|
||||
connected[id] = void
|
||||
for _, id := range node.Adjacency {
|
||||
connected[id] = void
|
||||
for _, adj := range node.Adjacency {
|
||||
if adj != id {
|
||||
connected[id] = void
|
||||
connected[adj] = void
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -108,3 +108,18 @@ func TestFilterUnconnectedPesudoNodes(t *testing.T) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestFilterUnconnectedSelf(t *testing.T) {
|
||||
// Test nodes that are only connected to themselves are filtered.
|
||||
{
|
||||
nodes := render.RenderableNodes{
|
||||
"foo": {ID: "foo", Node: report.MakeNode().WithAdjacent("foo")},
|
||||
}
|
||||
renderer := render.FilterUnconnected(mockRenderer{RenderableNodes: nodes})
|
||||
want := render.RenderableNodes{}
|
||||
have := renderer.Render(report.MakeReport()).Prune()
|
||||
if !reflect.DeepEqual(want, have) {
|
||||
t.Error(test.Diff(want, have))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user