]> granicus.if.org Git - graphviz/commitdiff
Add regression test
authorRob Hart <robhart@google.com>
Sat, 19 Dec 2020 22:14:22 +0000 (14:14 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Wed, 13 Jan 2021 15:11:32 +0000 (07:11 -0800)
Edit by Matthew Fernandez: moved this commit ahead of the one that fixes the bug
and marked the test case as expected to fail. This allows us to more accurately
confirm the bug exists and its fix works as intended, while still leaving the
commit series bisectable.

rtest/test_regression.py

index fbe96c6973d72b090a68acc9c096f5a4265e18d9..229ede0a426f04ad42dea4635c019be3c242a34b 100644 (file)
@@ -559,6 +559,25 @@ def test_1869(variant: int):
     assert 'style=dashed' in output, 'style=dashed not found in DOT output'
     assert 'penwidth=2' in output, 'penwidth=2 not found in DOT output'
 
+@pytest.mark.xfail(strict=True) # FIXME
+@pytest.mark.skipif(shutil.which('twopi') is None, reason='twopi not available')
+def test_1907():
+    '''
+    SVG edges should have title elements that match their names
+    https://gitlab.com/graphviz/graphviz/-/issues/1907
+    '''
+
+    # a trivial graph to provoke this issue
+    input = 'digraph { A -> B -> C }'
+
+    # generate an SVG from this input with twopi
+    p = subprocess.Popen(['twopi', '-Tsvg'], stdin=subprocess.PIPE, stdout=subprocess.PIPE,
+      universal_newlines=True)
+    output, _ = p.communicate(input)
+
+    assert '<title>A&#45;&gt;B</title>' in output, \
+      'element title not found in SVG'
+
 @pytest.mark.skipif(shutil.which('gvpr') is None, reason='gvpr not available')
 def test_1909():
     '''