Skip to content

Commit 670c39e

Browse files
committed
small cleaning, Chris review
1 parent 879ea28 commit 670c39e

File tree

2 files changed

+39
-29
lines changed

2 files changed

+39
-29
lines changed

nipype/pipeline/engine/tests/test_engine.py

+38-28
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from builtins import open
1010
from copy import deepcopy
1111
from glob import glob
12-
import os, pdb
12+
import os
1313

1414

1515
import pytest
@@ -499,12 +499,6 @@ def test_deep_nested_write_graph_runs(tmpdir):
499499
'pipemod1:outoutput1:e -> pipemod2:ininput1:w;\n',
500500
'}']
501501

502-
dotfile_flat = dotfile_orig
503-
dotfile_detailed_flat = dotfile_detailed_orig
504-
505-
dotfile_exec = dotfile_orig
506-
dotfile_detailed_exec = dotfile_detailed_orig
507-
508502

509503
dotfile_hierarchical = ['digraph pipe{\n',
510504
' label="pipe";\n',
@@ -520,6 +514,14 @@ def test_deep_nested_write_graph_runs(tmpdir):
520514
' pipe_mod1 -> pipe_mod2;\n',
521515
'}']
522516

517+
dotfiles = {
518+
"orig": dotfile_orig,
519+
"flat": dotfile_orig,
520+
"exec": dotfile_orig,
521+
"hierarchical": dotfile_hierarchical,
522+
"colored": dotfile_colored
523+
}
524+
523525
@pytest.mark.parametrize("simple", [True, False])
524526
@pytest.mark.parametrize("graph_type", ['orig', 'flat', 'exec', 'hierarchical', 'colored'])
525527
def test_write_graph_dotfile(tmpdir, graph_type, simple):
@@ -537,35 +539,29 @@ def test_write_graph_dotfile(tmpdir, graph_type, simple):
537539
graph_str = f.read()
538540

539541
if simple:
540-
for str in eval("dotfile_{}".format(graph_type)):
541-
assert str in graph_str
542+
for line in dotfiles[graph_type]:
543+
assert line in graph_str
542544
else:
543545
# if simple=False graph.dot uses longer names
544-
for str in eval("dotfile_{}".format(graph_type)):
546+
for line in dotfiles[graph_type]:
545547
if graph_type in ["hierarchical", "colored"]:
546-
assert str.replace("mod1 (engine)", "mod1.EngineTestInterface.engine").replace(
548+
assert line.replace("mod1 (engine)", "mod1.EngineTestInterface.engine").replace(
547549
"mod2 (engine)", "mod2.EngineTestInterface.engine") in graph_str
548550
else:
549-
assert str.replace(
551+
assert line.replace(
550552
"mod1 (engine)", "pipe.mod1.EngineTestInterface.engine").replace(
551553
"mod2 (engine)", "pipe.mod2.EngineTestInterface.engine") in graph_str
552554

555+
# graph_detailed is the same for orig, flat, exec (if no iterables)
553556
# graph_detailed is not created for hierachical or colored
554557
if graph_type not in ["hierarchical", "colored"]:
555558
with open("graph_detailed.dot") as f:
556559
graph_str = f.read()
557-
for str in eval("dotfile_detailed_{}".format(graph_type)):
558-
assert str in graph_str
560+
for line in dotfile_detailed_orig:
561+
assert line in graph_str
559562

560563

561564
# examples of dot files used in the following test
562-
dotfile_iter_orig = dotfile_orig
563-
dotfile_detailed_iter_orig = dotfile_detailed_orig
564-
565-
dotfile_iter_flat = dotfile_orig
566-
dotfile_detailed_iter_flat = dotfile_detailed_orig
567-
568-
dotfile_iter_exec = dotfile_orig
569565
dotfile_detailed_iter_exec = [
570566
'digraph structs {\n',
571567
'node [shape=record];\n',
@@ -593,6 +589,20 @@ def test_write_graph_dotfile(tmpdir, graph_type, simple):
593589
' pipe_mod1 -> pipe_mod2;\n',
594590
'}']
595591

592+
dotfiles_iter = {
593+
"orig": dotfile_orig,
594+
"flat": dotfile_orig,
595+
"exec": dotfile_orig,
596+
"hierarchical": dotfile_iter_hierarchical,
597+
"colored": dotfile_iter_colored
598+
}
599+
600+
dotfiles_detailed_iter = {
601+
"orig": dotfile_detailed_orig,
602+
"flat": dotfile_detailed_orig,
603+
"exec": dotfile_detailed_iter_exec
604+
}
605+
596606
@pytest.mark.parametrize("simple", [True, False])
597607
@pytest.mark.parametrize("graph_type", ['orig', 'flat', 'exec', 'hierarchical', 'colored'])
598608
def test_write_graph_dotfile_iterables(tmpdir, graph_type, simple):
@@ -611,25 +621,25 @@ def test_write_graph_dotfile_iterables(tmpdir, graph_type, simple):
611621
graph_str = f.read()
612622

613623
if simple:
614-
for str in eval("dotfile_iter_{}".format(graph_type)):
615-
assert str in graph_str
624+
for line in dotfiles_iter[graph_type]:
625+
assert line in graph_str
616626
else:
617627
# if simple=False graph.dot uses longer names
618-
for str in eval("dotfile_iter_{}".format(graph_type)):
628+
for line in dotfiles_iter[graph_type]:
619629
if graph_type in ["hierarchical", "colored"]:
620-
assert str.replace("mod1 (engine)", "mod1.EngineTestInterface.engine").replace(
630+
assert line.replace("mod1 (engine)", "mod1.EngineTestInterface.engine").replace(
621631
"mod2 (engine)", "mod2.EngineTestInterface.engine") in graph_str
622632
else:
623-
assert str.replace(
633+
assert line.replace(
624634
"mod1 (engine)", "pipe.mod1.EngineTestInterface.engine").replace(
625635
"mod2 (engine)", "pipe.mod2.EngineTestInterface.engine") in graph_str
626636

627637
# graph_detailed is not created for hierachical or colored
628638
if graph_type not in ["hierarchical", "colored"]:
629639
with open("graph_detailed.dot") as f:
630640
graph_str = f.read()
631-
for str in eval("dotfile_detailed_iter_{}".format(graph_type)):
632-
assert str in graph_str
641+
for line in dotfiles_detailed_iter[graph_type]:
642+
assert line in graph_str
633643

634644

635645

nipype/pipeline/engine/utils.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,7 @@ def _write_detailed_dot(graph, dotfilename):
507507
# write nodes
508508
edges = []
509509
for n in nx.topological_sort(graph):
510-
nodename = str(n.itername)
510+
nodename = n.itername
511511
inports = []
512512
for u, v, d in graph.in_edges(nbunch=n, data=True):
513513
for cd in d['connect']:

0 commit comments

Comments
 (0)