graph: clean up lint

This commit is contained in:
Dan Kortschak
2019-11-01 20:00:12 +10:30
parent cf4c2f75fb
commit 623f346311
9 changed files with 146 additions and 132 deletions

View File

@@ -113,7 +113,7 @@ func (g Graph) Edge(uid, vid int64) graph.Edge {
if !g.HasEdgeFromTo(uid, vid) { if !g.HasEdgeFromTo(uid, vid) {
return nil return nil
} }
return simple.Edge{simple.Node(uid), simple.Node(vid)} return simple.Edge{F: simple.Node(uid), T: simple.Node(vid)}
} }
// From returns all nodes that can be reached directly from the node with the // From returns all nodes that can be reached directly from the node with the

View File

@@ -114,7 +114,6 @@ func undirectedNamedIDGraphFrom(g []intset) graph.Graph {
type attrNode struct { type attrNode struct {
id int64 id int64
name string
attr []encoding.Attribute attr []encoding.Attribute
} }
@@ -248,8 +247,6 @@ func undirectedEdgeAttrGraphFrom(g []intset, attr map[edge][]encoding.Attribute)
type portedEdge struct { type portedEdge struct {
from, to graph.Node from, to graph.Node
directed bool
fromPort string fromPort string
fromCompass string fromCompass string
toPort string toPort string

View File

@@ -113,7 +113,7 @@ func (g Graph) Edge(uid, vid int64) graph.Edge {
if !g.HasEdgeBetween(uid, vid) { if !g.HasEdgeBetween(uid, vid) {
return nil return nil
} }
return simple.Edge{simple.Node(uid), simple.Node(vid)} return simple.Edge{F: simple.Node(uid), T: simple.Node(vid)}
} }
// EdgeBetween returns the edge between nodes x and y with IDs xid and yid. // EdgeBetween returns the edge between nodes x and y with IDs xid and yid.

View File

@@ -27,7 +27,7 @@ var eadesR2Tests = []struct {
name: "line", name: "line",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -42,10 +42,10 @@ var eadesR2Tests = []struct {
name: "square", name: "square",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(2)}, {F: simple.Node(0), T: simple.Node(2)},
{simple.Node(1), simple.Node(3)}, {F: simple.Node(1), T: simple.Node(3)},
{simple.Node(2), simple.Node(3)}, {F: simple.Node(2), T: simple.Node(3)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -60,12 +60,12 @@ var eadesR2Tests = []struct {
name: "tetrahedron", name: "tetrahedron",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(2)}, {F: simple.Node(0), T: simple.Node(2)},
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(3)}, {F: simple.Node(1), T: simple.Node(3)},
{simple.Node(2), simple.Node(3)}, {F: simple.Node(2), T: simple.Node(3)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -80,18 +80,18 @@ var eadesR2Tests = []struct {
name: "sheet", name: "sheet",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(4)}, {F: simple.Node(1), T: simple.Node(4)},
{simple.Node(2), simple.Node(5)}, {F: simple.Node(2), T: simple.Node(5)},
{simple.Node(3), simple.Node(4)}, {F: simple.Node(3), T: simple.Node(4)},
{simple.Node(3), simple.Node(6)}, {F: simple.Node(3), T: simple.Node(6)},
{simple.Node(4), simple.Node(5)}, {F: simple.Node(4), T: simple.Node(5)},
{simple.Node(4), simple.Node(7)}, {F: simple.Node(4), T: simple.Node(7)},
{simple.Node(5), simple.Node(8)}, {F: simple.Node(5), T: simple.Node(8)},
{simple.Node(6), simple.Node(7)}, {F: simple.Node(6), T: simple.Node(7)},
{simple.Node(7), simple.Node(8)}, {F: simple.Node(7), T: simple.Node(8)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -106,21 +106,21 @@ var eadesR2Tests = []struct {
name: "tube", name: "tube",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(2)}, {F: simple.Node(0), T: simple.Node(2)},
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(4)}, {F: simple.Node(1), T: simple.Node(4)},
{simple.Node(2), simple.Node(5)}, {F: simple.Node(2), T: simple.Node(5)},
{simple.Node(3), simple.Node(4)}, {F: simple.Node(3), T: simple.Node(4)},
{simple.Node(3), simple.Node(5)}, {F: simple.Node(3), T: simple.Node(5)},
{simple.Node(3), simple.Node(6)}, {F: simple.Node(3), T: simple.Node(6)},
{simple.Node(4), simple.Node(5)}, {F: simple.Node(4), T: simple.Node(5)},
{simple.Node(4), simple.Node(7)}, {F: simple.Node(4), T: simple.Node(7)},
{simple.Node(5), simple.Node(8)}, {F: simple.Node(5), T: simple.Node(8)},
{simple.Node(6), simple.Node(7)}, {F: simple.Node(6), T: simple.Node(7)},
{simple.Node(6), simple.Node(8)}, {F: simple.Node(6), T: simple.Node(8)},
{simple.Node(7), simple.Node(8)}, {F: simple.Node(7), T: simple.Node(8)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -137,21 +137,21 @@ var eadesR2Tests = []struct {
name: "tube-steep", name: "tube-steep",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(2)}, {F: simple.Node(0), T: simple.Node(2)},
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(4)}, {F: simple.Node(1), T: simple.Node(4)},
{simple.Node(2), simple.Node(5)}, {F: simple.Node(2), T: simple.Node(5)},
{simple.Node(3), simple.Node(4)}, {F: simple.Node(3), T: simple.Node(4)},
{simple.Node(3), simple.Node(5)}, {F: simple.Node(3), T: simple.Node(5)},
{simple.Node(3), simple.Node(6)}, {F: simple.Node(3), T: simple.Node(6)},
{simple.Node(4), simple.Node(5)}, {F: simple.Node(4), T: simple.Node(5)},
{simple.Node(4), simple.Node(7)}, {F: simple.Node(4), T: simple.Node(7)},
{simple.Node(5), simple.Node(8)}, {F: simple.Node(5), T: simple.Node(8)},
{simple.Node(6), simple.Node(7)}, {F: simple.Node(6), T: simple.Node(7)},
{simple.Node(6), simple.Node(8)}, {F: simple.Node(6), T: simple.Node(8)},
{simple.Node(7), simple.Node(8)}, {F: simple.Node(7), T: simple.Node(8)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -167,21 +167,21 @@ var eadesR2Tests = []struct {
name: "wp_page", // https://en.wikipedia.org/wiki/PageRank#/media/File:PageRanks-Example.jpg name: "wp_page", // https://en.wikipedia.org/wiki/PageRank#/media/File:PageRanks-Example.jpg
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(3)}, {F: simple.Node(1), T: simple.Node(3)},
{simple.Node(1), simple.Node(4)}, {F: simple.Node(1), T: simple.Node(4)},
{simple.Node(1), simple.Node(5)}, {F: simple.Node(1), T: simple.Node(5)},
{simple.Node(1), simple.Node(6)}, {F: simple.Node(1), T: simple.Node(6)},
{simple.Node(1), simple.Node(7)}, {F: simple.Node(1), T: simple.Node(7)},
{simple.Node(1), simple.Node(8)}, {F: simple.Node(1), T: simple.Node(8)},
{simple.Node(3), simple.Node(4)}, {F: simple.Node(3), T: simple.Node(4)},
{simple.Node(4), simple.Node(5)}, {F: simple.Node(4), T: simple.Node(5)},
{simple.Node(4), simple.Node(6)}, {F: simple.Node(4), T: simple.Node(6)},
{simple.Node(4), simple.Node(7)}, {F: simple.Node(4), T: simple.Node(7)},
{simple.Node(4), simple.Node(8)}, {F: simple.Node(4), T: simple.Node(8)},
{simple.Node(4), simple.Node(9)}, {F: simple.Node(4), T: simple.Node(9)},
{simple.Node(4), simple.Node(10)}, {F: simple.Node(4), T: simple.Node(10)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {

View File

@@ -27,7 +27,7 @@ var isomapR2Tests = []struct {
name: "line_isomap", name: "line_isomap",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -40,10 +40,10 @@ var isomapR2Tests = []struct {
name: "square_isomap", name: "square_isomap",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(2)}, {F: simple.Node(0), T: simple.Node(2)},
{simple.Node(1), simple.Node(3)}, {F: simple.Node(1), T: simple.Node(3)},
{simple.Node(2), simple.Node(3)}, {F: simple.Node(2), T: simple.Node(3)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -56,12 +56,12 @@ var isomapR2Tests = []struct {
name: "tetrahedron_isomap", name: "tetrahedron_isomap",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(2)}, {F: simple.Node(0), T: simple.Node(2)},
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(3)}, {F: simple.Node(1), T: simple.Node(3)},
{simple.Node(2), simple.Node(3)}, {F: simple.Node(2), T: simple.Node(3)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -74,18 +74,18 @@ var isomapR2Tests = []struct {
name: "sheet_isomap", name: "sheet_isomap",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(4)}, {F: simple.Node(1), T: simple.Node(4)},
{simple.Node(2), simple.Node(5)}, {F: simple.Node(2), T: simple.Node(5)},
{simple.Node(3), simple.Node(4)}, {F: simple.Node(3), T: simple.Node(4)},
{simple.Node(3), simple.Node(6)}, {F: simple.Node(3), T: simple.Node(6)},
{simple.Node(4), simple.Node(5)}, {F: simple.Node(4), T: simple.Node(5)},
{simple.Node(4), simple.Node(7)}, {F: simple.Node(4), T: simple.Node(7)},
{simple.Node(5), simple.Node(8)}, {F: simple.Node(5), T: simple.Node(8)},
{simple.Node(6), simple.Node(7)}, {F: simple.Node(6), T: simple.Node(7)},
{simple.Node(7), simple.Node(8)}, {F: simple.Node(7), T: simple.Node(8)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -98,21 +98,21 @@ var isomapR2Tests = []struct {
name: "tube_isomap", name: "tube_isomap",
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(1)}, {F: simple.Node(0), T: simple.Node(1)},
{simple.Node(0), simple.Node(2)}, {F: simple.Node(0), T: simple.Node(2)},
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(4)}, {F: simple.Node(1), T: simple.Node(4)},
{simple.Node(2), simple.Node(5)}, {F: simple.Node(2), T: simple.Node(5)},
{simple.Node(3), simple.Node(4)}, {F: simple.Node(3), T: simple.Node(4)},
{simple.Node(3), simple.Node(5)}, {F: simple.Node(3), T: simple.Node(5)},
{simple.Node(3), simple.Node(6)}, {F: simple.Node(3), T: simple.Node(6)},
{simple.Node(4), simple.Node(5)}, {F: simple.Node(4), T: simple.Node(5)},
{simple.Node(4), simple.Node(7)}, {F: simple.Node(4), T: simple.Node(7)},
{simple.Node(5), simple.Node(8)}, {F: simple.Node(5), T: simple.Node(8)},
{simple.Node(6), simple.Node(7)}, {F: simple.Node(6), T: simple.Node(7)},
{simple.Node(6), simple.Node(8)}, {F: simple.Node(6), T: simple.Node(8)},
{simple.Node(7), simple.Node(8)}, {F: simple.Node(7), T: simple.Node(8)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {
@@ -125,21 +125,21 @@ var isomapR2Tests = []struct {
name: "wp_page_isomap", // https://en.wikipedia.org/wiki/PageRank#/media/File:PageRanks-Example.jpg name: "wp_page_isomap", // https://en.wikipedia.org/wiki/PageRank#/media/File:PageRanks-Example.jpg
g: func() graph.Graph { g: func() graph.Graph {
edges := []simple.Edge{ edges := []simple.Edge{
{simple.Node(0), simple.Node(3)}, {F: simple.Node(0), T: simple.Node(3)},
{simple.Node(1), simple.Node(2)}, {F: simple.Node(1), T: simple.Node(2)},
{simple.Node(1), simple.Node(3)}, {F: simple.Node(1), T: simple.Node(3)},
{simple.Node(1), simple.Node(4)}, {F: simple.Node(1), T: simple.Node(4)},
{simple.Node(1), simple.Node(5)}, {F: simple.Node(1), T: simple.Node(5)},
{simple.Node(1), simple.Node(6)}, {F: simple.Node(1), T: simple.Node(6)},
{simple.Node(1), simple.Node(7)}, {F: simple.Node(1), T: simple.Node(7)},
{simple.Node(1), simple.Node(8)}, {F: simple.Node(1), T: simple.Node(8)},
{simple.Node(3), simple.Node(4)}, {F: simple.Node(3), T: simple.Node(4)},
{simple.Node(4), simple.Node(5)}, {F: simple.Node(4), T: simple.Node(5)},
{simple.Node(4), simple.Node(6)}, {F: simple.Node(4), T: simple.Node(6)},
{simple.Node(4), simple.Node(7)}, {F: simple.Node(4), T: simple.Node(7)},
{simple.Node(4), simple.Node(8)}, {F: simple.Node(4), T: simple.Node(8)},
{simple.Node(4), simple.Node(9)}, {F: simple.Node(4), T: simple.Node(9)},
{simple.Node(4), simple.Node(10)}, {F: simple.Node(4), T: simple.Node(10)},
} }
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
for _, e := range edges { for _, e := range edges {

View File

@@ -5,6 +5,7 @@
package path package path
import ( import (
"fmt"
"testing" "testing"
"gonum.org/v1/gonum/graph" "gonum.org/v1/gonum/graph"
@@ -28,13 +29,19 @@ var (
func gnpUndirected(n int, p float64) graph.Undirected { func gnpUndirected(n int, p float64) graph.Undirected {
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
gen.Gnp(g, n, p, nil) err := gen.Gnp(g, n, p, nil)
if err != nil {
panic(fmt.Sprintf("path: bad test: %v", err))
}
return g return g
} }
func navigableSmallWorldUndirected(n, p, q int, r float64) graph.Undirected { func navigableSmallWorldUndirected(n, p, q int, r float64) graph.Undirected {
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
gen.NavigableSmallWorld(g, []int{n, n}, p, q, r, nil) err := gen.NavigableSmallWorld(g, []int{n, n}, p, q, r, nil)
if err != nil {
panic(fmt.Sprintf("path: bad test: %v", err))
}
return g return g
} }
@@ -118,7 +125,10 @@ var (
func gnpDirected(n int, p float64) graph.Directed { func gnpDirected(n int, p float64) graph.Directed {
g := simple.NewDirectedGraph() g := simple.NewDirectedGraph()
gen.Gnp(g, n, p, nil) err := gen.Gnp(g, n, p, nil)
if err != nil {
panic(fmt.Sprintf("path: bad test: %v", err))
}
return g return g
} }

View File

@@ -160,7 +160,7 @@ func TestWeightedDirected(t *testing.T) {
// Tests Issue #27 // Tests Issue #27
func TestWeightedEdgeOvercounting(t *testing.T) { func TestWeightedEdgeOvercounting(t *testing.T) {
g := generateDummyGraph() g := generateDummyWeightedGraph()
if neigh := graph.NodesOf(g.From(int64(2))); len(neigh) != 2 { if neigh := graph.NodesOf(g.From(int64(2))); len(neigh) != 2 {
t.Errorf("Node 2 has incorrect number of neighbors got neighbors %v (count %d), expected 2 neighbors {0,1}", neigh, len(neigh)) t.Errorf("Node 2 has incorrect number of neighbors got neighbors %v (count %d), expected 2 neighbors {0,1}", neigh, len(neigh))

View File

@@ -5,6 +5,7 @@
package topo package topo
import ( import (
"fmt"
"testing" "testing"
"gonum.org/v1/gonum/graph" "gonum.org/v1/gonum/graph"
@@ -23,7 +24,10 @@ var (
func gnpDirected(n int, p float64) graph.Directed { func gnpDirected(n int, p float64) graph.Directed {
g := simple.NewDirectedGraph() g := simple.NewDirectedGraph()
gen.Gnp(g, n, p, nil) err := gen.Gnp(g, n, p, nil)
if err != nil {
panic(fmt.Sprintf("topo: bad test: %v", err))
}
return g return g
} }

View File

@@ -366,7 +366,10 @@ var (
func gnpUndirected(n int, p float64) graph.Undirected { func gnpUndirected(n int, p float64) graph.Undirected {
g := simple.NewUndirectedGraph() g := simple.NewUndirectedGraph()
gen.Gnp(g, n, p, nil) err := gen.Gnp(g, n, p, nil)
if err != nil {
panic(fmt.Sprintf("traverse: bad test: %v", err))
}
return g return g
} }