1diff --git a/objgraph.py b/objgraph.py
2index 88e307b..0369f49 100755
3--- a/objgraph.py
4+++ b/objgraph.py
5@@ -1045,12 +1045,12 @@ def _present_graph(dot_filename, filename=None):
6 if not filename and _program_in_path('xdot'):
7 print("Spawning graph viewer (xdot)")
8 subprocess.Popen(['xdot', dot_filename], close_fds=True)
9- elif _program_in_path('dot'):
10+ elif True: # path to dot is hardcoded and hence always in $PATH
11 if not filename:
12 print("Graph viewer (xdot) not found, generating a png instead")
13 filename = dot_filename[:-4] + '.png'
14 stem, ext = os.path.splitext(filename)
15- cmd = ['dot', '-T' + ext[1:], '-o' + filename, dot_filename]
16+ cmd = ['@graphviz@/bin/dot', '-T' + ext[1:], '-o' + filename, dot_filename]
17 dot = subprocess.Popen(cmd, close_fds=False)
18 dot.wait()
19 if dot.returncode != 0:
20diff --git a/tests.py b/tests.py
21index 7db2888..bdb666e 100755
22--- a/tests.py
23+++ b/tests.py
24@@ -557,7 +557,7 @@ class PresentGraphTest(CaptureMixin, TemporaryDirectoryMixin,
25 self.programsInPath(['dot'])
26 objgraph._present_graph('foo.dot', 'bar.png')
27 self.assertOutput("""
28- subprocess.Popen(['dot', '-Tpng', '-obar.png', 'foo.dot'])
29+ subprocess.Popen(['@graphviz@/bin/dot', '-Tpng', '-obar.png', 'foo.dot'])
30 Image generated as bar.png
31 """)
32
33@@ -566,11 +566,12 @@ class PresentGraphTest(CaptureMixin, TemporaryDirectoryMixin,
34 objgraph.subprocess.should_fail = True
35 objgraph._present_graph('f.dot', 'b.png')
36 self.assertOutput("""
37- subprocess.Popen(['dot', '-Tpng', '-ob.png', 'f.dot'])
38- dot failed (exit code 1) while executing "dot -Tpng -ob.png f.dot"
39+ subprocess.Popen(['@graphviz@/bin/dot', '-Tpng', '-ob.png', 'f.dot'])
40+ dot failed (exit code 1) while executing "@graphviz@/bin/dot -Tpng -ob.png f.dot"
41 """)
42
43- def test_present_png_no_dot(self):
44+ @unittest.skip("empty $PATH has no effect")
45+ def no_test_present_png_no_dot(self):
46 self.programsInPath([])
47 objgraph._present_graph('foo.dot', 'bar.png')
48 self.assertOutput("""
49@@ -591,10 +592,11 @@ class PresentGraphTest(CaptureMixin, TemporaryDirectoryMixin,
50 objgraph._present_graph('foo.dot')
51 self.assertOutput("""
52 Graph viewer (xdot) not found, generating a png instead
53- subprocess.Popen(['dot', '-Tpng', '-ofoo.png', 'foo.dot'])
54+ subprocess.Popen(['@graphviz@/bin/dot', '-Tpng', '-ofoo.png', 'foo.dot'])
55 Image generated as foo.png
56 """)
57
58+ @unittest.skip("empty $PATH has no effect")
59 def test_present_no_xdot_and_no_not(self):
60 self.programsInPath([])
61 objgraph._present_graph('foo.dot')