[geneagrapher] 173/226: Unified the naming of nodes that seed the graph.
Doug Torrance
dtorrance-guest at moszumanska.debian.org
Sat Jul 11 17:11:03 UTC 2015
This is an automated email from the git hooks/post-receive script.
dtorrance-guest pushed a commit to branch master
in repository geneagrapher.
commit 45117a5721cadd281f4949ea30a6a2488c87bcd8
Author: David Alber <alber.david at gmail.com>
Date: Sat Nov 26 10:34:00 2011 -0800
Unified the naming of nodes that seed the graph.
"Head" and "leaf" nodes are now consistently called "seed" nodes.
---
geneagrapher/geneagrapher.py | 14 ++++++------
geneagrapher/graph/graph.py | 46 +++++++++++++++++++-------------------
geneagrapher/graph/node.py | 1 -
tests/test_geneagrapher_methods.py | 26 ++++++++++-----------
tests/test_graph_methods.py | 26 ++++++++++-----------
5 files changed, 56 insertions(+), 57 deletions(-)
diff --git a/geneagrapher/geneagrapher.py b/geneagrapher/geneagrapher.py
index 36d3882..6433a38 100644
--- a/geneagrapher/geneagrapher.py
+++ b/geneagrapher/geneagrapher.py
@@ -11,7 +11,7 @@ class Geneagrapher:
"""
def __init__(self):
self.graph = Graph()
- self.leaf_ids = []
+ self.seed_ids = []
self.get_ancestors = False
self.get_descendants = False
self.verbose = False
@@ -54,7 +54,7 @@ in graph")
self.get_descendants = options.get_descendants
self.verbose = options.verbose
self.write_filename = options.filename
- self.leaf_ids = [int(arg) for arg in args]
+ self.seed_ids = [int(arg) for arg in args]
def build_graph_portion(self, grab_queue, is_seed, **kwargs):
"""Handle grabbing and storing nodes in the graph. Depending on the
@@ -81,21 +81,21 @@ in graph")
Populate the graph member by grabbing the mathematician
pages and extracting relevant data.
"""
- leaf_queue = list(self.leaf_ids)
+ seed_queue = list(self.seed_ids)
ancestor_queue = []
descendant_queue = []
- # Grab "leaf" nodes.
- self.build_graph_portion(leaf_queue, True,
+ # Grab "seed" nodes.
+ self.build_graph_portion(seed_queue, True,
ancestor_queue=ancestor_queue,
descendant_queue=descendant_queue)
- # Grab ancestors of leaf nodes.
+ # Grab ancestors of seed nodes.
if self.get_ancestors:
self.build_graph_portion(ancestor_queue, False,
ancestor_queue=ancestor_queue)
- # Grab descendants of leaf nodes.
+ # Grab descendants of seed nodes.
if self.get_descendants:
self.build_graph_portion(descendant_queue, False,
descendant_queue=descendant_queue)
diff --git a/geneagrapher/graph/graph.py b/geneagrapher/graph/graph.py
index 919380e..f8ba7c8 100644
--- a/geneagrapher/graph/graph.py
+++ b/geneagrapher/graph/graph.py
@@ -14,29 +14,29 @@ class Graph:
"""
Class storing the representation of a genealogy graph.
"""
- def __init__(self, heads=None):
+ def __init__(self, seeds=None):
"""
Graph class constructor.
Parameters:
- heads: a list of Node objects representing the tree head
- (can be omitted to create an empty graph)
+ seeds: a list of Node objects representing the tree seed nodes
+ (omit to create an empty graph)
"""
- self.heads = heads
+ self.seeds = seeds
self.supp_id = -1
- # Verify type of heads is what we expect.
- if self.heads is not None:
- if not isinstance(self.heads, list):
+ # Verify type of seeds is what we expect.
+ if self.seeds is not None:
+ if not isinstance(self.seeds, list):
raise TypeError("Unexpected parameter type: expected list of \
-Node objects for 'heads'")
- for head in self.heads:
- if not isinstance(head, Node):
+Node objects for 'seeds'")
+ for seed in self.seeds:
+ if not isinstance(seed, Node):
raise TypeError("Unexpected parameter type: expected list \
-of Node objects for 'heads'")
+of Node objects for 'seeds'")
- if self.heads is not None:
- self.nodes = dict([(head.get_id(), head) for head in self.heads])
+ if self.seeds is not None:
+ self.nodes = dict([(seed.get_id(), seed) for seed in self.seeds])
else:
self.nodes = {}
@@ -60,16 +60,16 @@ of Node objects for 'heads'")
return self.nodes.keys()
def add_node(self, name, institution, year, id, ancestors, descendants,
- isHead=False):
+ is_seed=False):
"""
Add a new node to the graph if a matching node is not already
present.
"""
record = Record(name, institution, year, id)
node = Node(record, ancestors, descendants)
- self.add_node_object(node, isHead)
+ self.add_node_object(node, is_seed)
- def add_node_object(self, node, isHead=False):
+ def add_node_object(self, node, is_seed=False):
"""
Add a new node object to the graph if a node with the same id
is not already present.
@@ -82,22 +82,22 @@ of Node objects for 'heads'")
node.set_id(self.supp_id)
self.supp_id -= 1
self.nodes[node.get_id()] = node
- if self.heads is None:
- self.heads = [node]
- elif isHead:
- self.heads.append(node)
+ if self.seeds is None:
+ self.seeds = [node]
+ elif is_seed:
+ self.seeds.append(node)
def generate_dot_file(self, include_ancestors, include_descendants):
"""
Return a string that contains the content of the Graphviz dotfile
format for this graph.
"""
- if self.heads is None:
+ if self.seeds is None:
return ""
queue = []
- for head in self.heads:
- queue.append(head.get_id())
+ for seed in self.seeds:
+ queue.append(seed.get_id())
edges = ""
dotfile = ""
diff --git a/geneagrapher/graph/node.py b/geneagrapher/graph/node.py
index 6f9540e..ff571be 100644
--- a/geneagrapher/graph/node.py
+++ b/geneagrapher/graph/node.py
@@ -1,6 +1,5 @@
from record import Record
-
class Node:
"""
Container class storing a node in the graph.
diff --git a/tests/test_geneagrapher_methods.py b/tests/test_geneagrapher_methods.py
index c945f60..28d33ff 100644
--- a/tests/test_geneagrapher_methods.py
+++ b/tests/test_geneagrapher_methods.py
@@ -15,7 +15,7 @@ class TestGeneagrapherMethods(unittest.TestCase):
def test001_init(self):
# Test constructor.
self.assertEquals(isinstance(self.ggrapher.graph, Graph), True)
- self.assertEquals(self.ggrapher.leaf_ids, [])
+ self.assertEquals(self.ggrapher.seed_ids, [])
self.assertEquals(self.ggrapher.get_ancestors, False)
self.assertEquals(self.ggrapher.get_descendants, False)
self.assertEquals(self.ggrapher.verbose, False)
@@ -52,7 +52,7 @@ geneagrapher: error: no record IDs given
self.assertEquals(self.ggrapher.get_descendants, False)
self.assertEquals(self.ggrapher.verbose, False)
self.assertEquals(self.ggrapher.write_filename, None)
- self.assertEquals(self.ggrapher.leaf_ids, [3])
+ self.assertEquals(self.ggrapher.seed_ids, [3])
def test004_parse_options(self):
# Test parse_input() with options.
@@ -62,7 +62,7 @@ geneagrapher: error: no record IDs given
self.assertEquals(self.ggrapher.get_descendants, True)
self.assertEquals(self.ggrapher.verbose, True)
self.assertEquals(self.ggrapher.write_filename, "filler")
- self.assertEquals(self.ggrapher.leaf_ids, [3, 43])
+ self.assertEquals(self.ggrapher.seed_ids, [3, 43])
def test005_parse_short_options(self):
# Test parse_input() with short versions of the options.
@@ -72,11 +72,11 @@ geneagrapher: error: no record IDs given
self.assertEquals(self.ggrapher.get_descendants, True)
self.assertEquals(self.ggrapher.verbose, True)
self.assertEquals(self.ggrapher.write_filename, "filler")
- self.assertEquals(self.ggrapher.leaf_ids, [3, 43])
+ self.assertEquals(self.ggrapher.seed_ids, [3, 43])
def test006_build_graph_only_self(self):
# Graph building with no ancestors or descendants.
- self.ggrapher.leaf_ids.append(127946)
+ self.ggrapher.seed_ids.append(127946)
self.ggrapher.build_graph()
nodes = self.ggrapher.graph.nodes
self.assertEquals(len(nodes), 1)
@@ -95,7 +95,7 @@ geneagrapher: error: no record IDs given
def test007_build_graph_only_self_verbose(self):
# Graph building with no ancestors or descendants.
self.ggrapher.verbose = True
- self.ggrapher.leaf_ids.append(127946)
+ self.ggrapher.seed_ids.append(127946)
# Redirect stdout to capture output.
stdout = sys.stdout
@@ -123,7 +123,7 @@ geneagrapher: error: no record IDs given
def test008_build_graph_with_ancestors(self):
# Graph building with ancestors.
- self.ggrapher.leaf_ids.append(127946)
+ self.ggrapher.seed_ids.append(127946)
self.ggrapher.get_ancestors = True
self.ggrapher.build_graph()
nodes = self.ggrapher.graph.nodes
@@ -175,7 +175,7 @@ geneagrapher: error: no record IDs given
def test009_build_graph_with_descendants(self):
# Graph building with descendants.
- self.ggrapher.leaf_ids.append(79568)
+ self.ggrapher.seed_ids.append(79568)
self.ggrapher.get_descendants = True
self.ggrapher.build_graph()
nodes = self.ggrapher.graph.nodes
@@ -216,7 +216,7 @@ geneagrapher: error: no record IDs given
def test010_build_graph_bad_id(self):
# Graph building with a bad ID.
- self.ggrapher.leaf_ids.append(79568583832)
+ self.ggrapher.seed_ids.append(79568583832)
self.assertRaises(ValueError, self.ggrapher.build_graph)
try:
@@ -235,7 +235,7 @@ geneagrapher: error: no record IDs given
self.assertEquals(self.ggrapher.get_descendants, False)
self.assertEquals(self.ggrapher.verbose, False)
self.assertEquals(self.ggrapher.write_filename, None)
- self.assertEquals(self.ggrapher.leaf_ids, [30484])
+ self.assertEquals(self.ggrapher.seed_ids, [30484])
self.ggrapher.build_graph()
@@ -265,7 +265,7 @@ geneagrapher: error: no record IDs given
self.assertEquals(self.ggrapher.get_descendants, False)
self.assertEquals(self.ggrapher.verbose, False)
self.assertEquals(self.ggrapher.write_filename, None)
- self.assertEquals(self.ggrapher.leaf_ids, [127946])
+ self.assertEquals(self.ggrapher.seed_ids, [127946])
self.ggrapher.build_graph()
@@ -301,7 +301,7 @@ geneagrapher: error: no record IDs given
self.assertEquals(self.ggrapher.get_descendants, True)
self.assertEquals(self.ggrapher.verbose, False)
self.assertEquals(self.ggrapher.write_filename, None)
- self.assertEquals(self.ggrapher.leaf_ids, [79568])
+ self.assertEquals(self.ggrapher.seed_ids, [79568])
self.ggrapher.build_graph()
@@ -337,7 +337,7 @@ geneagrapher: error: no record IDs given
self.assertEquals(self.ggrapher.get_descendants, False)
self.assertEquals(self.ggrapher.verbose, False)
self.assertEquals(self.ggrapher.write_filename, outfname)
- self.assertEquals(self.ggrapher.leaf_ids, [30484])
+ self.assertEquals(self.ggrapher.seed_ids, [30484])
self.ggrapher.build_graph()
self.ggrapher.generate_dot_file()
diff --git a/tests/test_graph_methods.py b/tests/test_graph_methods.py
index b9d348e..7f73db1 100644
--- a/tests/test_graph_methods.py
+++ b/tests/test_graph_methods.py
@@ -13,16 +13,16 @@ class TestGraphMethods(unittest.TestCase):
def test001_init_empty(self):
# Test the constructor.
graph = Graph()
- self.assertEquals(graph.heads, None)
+ self.assertEquals(graph.seeds, None)
def test002_init(self):
# Test the constructor.
- self.assert_(self.graph1.heads == [self.node1])
+ self.assert_(self.graph1.seeds == [self.node1])
self.assertEquals(self.graph1.nodes.keys(), [18231])
self.assertEquals(self.graph1.nodes[18231], self.node1)
- def test003_init_bad_heads(self):
- # Test the constructor when passed a bad type for the heads parameter.
+ def test003_init_bad_seeds(self):
+ # Test the constructor when passed a bad type for the seeds parameter.
self.assertRaises(TypeError, Graph, 3)
def test004_has_node_true(self):
@@ -55,21 +55,21 @@ class TestGraphMethods(unittest.TestCase):
# Test the add_node() method.
self.graph1.add_node("Leonhard Euler", "Universitaet Basel", 1726, 38586, [], [])
self.assertEquals([38586, 18231], self.graph1.get_node_list())
- self.assertEquals(self.graph1.heads, [self.node1])
+ self.assertEquals(self.graph1.seeds, [self.node1])
- def test010_add_second_node_head(self):
+ def test010_add_second_node_seed(self):
# Test the add_node() method when adding a second node and
- # marking it as a head node.
+ # marking it as a seed node.
self.graph1.add_node("Leonhard Euler", "Universitaet Basel", 1726, 38586, [], [], True)
self.assertEquals([38586, 18231], self.graph1.get_node_list())
- self.assertEquals(self.graph1.heads, [self.node1, self.graph1.get_node(38586)])
+ self.assertEquals(self.graph1.seeds, [self.node1, self.graph1.get_node(38586)])
- def test011_add_node_head(self):
- # Test the add_node() method when no heads exist.
+ def test011_add_node_seed(self):
+ # Test the add_node() method when no seeds exist.
graph = Graph()
- self.assertEquals(graph.heads, None)
+ self.assertEquals(graph.seeds, None)
graph.add_node("Leonhard Euler", "Universitaet Basel", 1726, 38586, [], [])
- self.assertEquals(graph.heads, [graph.get_node(38586)])
+ self.assertEquals(graph.seeds, [graph.get_node(38586)])
def test012_add_node_already_present(self):
self.graph1.add_node("Leonhard Euler", "Universitaet Basel", 1726, 38586, [], [])
@@ -89,7 +89,7 @@ class TestGraphMethods(unittest.TestCase):
node = Node(record, [], [])
self.graph1.add_node_object(node)
self.assertEquals([38586, 18231], self.graph1.get_node_list())
- self.assertEquals(self.graph1.heads, [self.node1])
+ self.assertEquals(self.graph1.seeds, [self.node1])
def test014_generate_dot_file(self):
# Test the generate_dot_file() method.
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/geneagrapher.git
More information about the debian-science-commits
mailing list