chiark / gitweb /
m.dot: adapt test to differences in output with graphviz 10.
authorVladimír Vondruš <mosra@centrum.cz>
Wed, 21 Aug 2024 10:05:24 +0000 (12:05 +0200)
committerVladimír Vondruš <mosra@centrum.cz>
Wed, 21 Aug 2024 11:54:54 +0000 (13:54 +0200)
Or 9, or maybe 8 or 7. The version I tested with before was 2.44, no
idea why was it so important to suddenly change the versioning scheme
like this.

documentation/test_doxygen/contents_dot/index-2.html [new file with mode: 0644]
documentation/test_doxygen/contents_dot/index.html
documentation/test_doxygen/test_contents.py
documentation/test_python/page_plugins/dot-2.html [new file with mode: 0644]
documentation/test_python/page_plugins/dot.html
documentation/test_python/test_page.py
plugins/m/test/dot/page-2.html [new file with mode: 0644]
plugins/m/test/dot/page.html
plugins/m/test/test_dot.py

diff --git a/documentation/test_doxygen/contents_dot/index-2.html b/documentation/test_doxygen/contents_dot/index-2.html
new file mode 100644 (file)
index 0000000..7ebadeb
--- /dev/null
@@ -0,0 +1,132 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8" />
+  <title>My Project</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i%7CSource+Code+Pro:400,400i,600" />
+  <link rel="stylesheet" href="m-dark+documentation.compiled.css" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="index.html" id="m-navbar-brand" class="m-col-t-8 m-col-m-none m-left-m">My Project</a>
+    </div>
+  </div>
+</nav></header>
+<main><article>
+  <div class="m-container m-container-inflatable">
+    <div class="m-row">
+      <div class="m-col-l-10 m-push-l-1">
+        <h1>
+          My Project
+        </h1>
+<p>Note: the test uses DejaVu Sans instead of Source Sans Pro in order to have predictable rendering on the CIs.</p><div class="m-graph"><svg style="width: 16.312rem; height: 5.312rem;" viewBox="0.00 0.00 261.18 85.48">
+<g transform="scale(1 1) rotate(0) translate(4 81.48)">
+<title>Basics</title>
+<g class="m-node">
+<title>a</title>
+<polygon points="54,-41.09 0,-41.09 0,-5.09 54,-5.09 54,-41.09"/>
+<text text-anchor="middle" x="27" y="-19.29">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="114.09" cy="-23.09" rx="19.17" ry="19.17"/>
+<ellipse cx="114.09" cy="-23.09" rx="23.18" ry="23.18"/>
+<text text-anchor="middle" x="114.09" y="-19.29">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&gt;b</title>
+<path d="M54.46,-23.09C62.78,-23.09 72.07,-23.09 80.75,-23.09"/>
+<polygon points="80.94,-26.59 90.94,-23.09 80.94,-19.59 80.94,-26.59"/>
+</g>
+<g class="m-node m-flat">
+<title>c</title>
+<ellipse cx="226.18" cy="-23.09" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="226.18" y="-19.29">c</text>
+</g>
+<g class="m-edge">
+<title>b&#45;&gt;c</title>
+<path d="M137.37,-23.09C152.15,-23.09 171.88,-23.09 188.89,-23.09"/>
+<polygon points="189.07,-26.59 199.07,-23.09 189.07,-19.59 189.07,-26.59"/>
+<text text-anchor="middle" x="168.18" y="-35.09" style="font-size: 40.0px;">0</text>
+</g>
+<g class="m-edge">
+<title>c&#45;&gt;c</title>
+<path d="M215.91,-40.31C213.81,-50.24 217.23,-59.48 226.18,-59.48 231.92,-59.48 235.38,-55.68 236.58,-50.35"/>
+<polygon points="240.08,-50.27 236.46,-40.31 233.08,-50.35 240.08,-50.27"/>
+<text text-anchor="middle" x="226.18" y="-64.68">1</text>
+</g>
+</g>
+</svg>
+</div><div class="m-graph"><svg style="width: 5.812rem; height: 8.562rem;" viewBox="0.00 0.00 93.09 136.95">
+<g transform="scale(1 1) rotate(0) translate(4 132.95)">
+<title>Colors</title>
+<g class="m-node m-success m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-110.57" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-106.77">a</text>
+</g>
+<g class="m-node m-dim">
+<title>b</title>
+<ellipse cx="27" cy="-19.09" rx="19.18" ry="19.18"/>
+<text text-anchor="middle" x="27" y="-15.29">b</text>
+</g>
+<g class="m-edge m-warning">
+<title>a&#45;&gt;b</title>
+<path d="M27,-91.89C27,-79.55 27,-62.82 27,-48.61"/>
+<polygon points="30.5,-48.35 27,-38.35 23.5,-48.35 30.5,-48.35"/>
+<text text-anchor="middle" x="41" y="-61.38">yes</text>
+</g>
+<g class="m-edge m-primary">
+<title>b&#45;&gt;b</title>
+<path d="M44.55,-27.24C54.67,-28.91 64.09,-26.19 64.09,-19.09 64.09,-14.54 60.23,-11.8 54.79,-10.84"/>
+<polygon points="54.52,-7.35 44.55,-10.94 54.59,-14.35 54.52,-7.35"/>
+<text text-anchor="middle" x="74.59" y="-15.29">no</text>
+</g>
+</g>
+</svg>
+</div><figure class="m-figure"><svg class="m-graph" style="width: 5rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&#45;b</title>
+<path d="M27,-72.66C27,-61.85 27,-48.03 27,-37.17"/>
+</g>
+</g>
+</svg>
+<figcaption>A graph</figcaption></figure><figure class="m-figure"><svg class="m-graph" style="height: 5rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&#45;b</title>
+<path d="M27,-72.66C27,-61.85 27,-48.03 27,-37.17"/>
+</g>
+</g>
+</svg>
+<figcaption>A graph</figcaption></figure>
+      </div>
+    </div>
+  </div>
+</article></main>
+</body>
+</html>
index 7ebadebfaa926a69b6c682cf0613f4e6648f5983..e7495d900882f1b7bdefd6dd03ae71549954750d 100644 (file)
         <h1>
           My Project
         </h1>
-<p>Note: the test uses DejaVu Sans instead of Source Sans Pro in order to have predictable rendering on the CIs.</p><div class="m-graph"><svg style="width: 16.312rem; height: 5.312rem;" viewBox="0.00 0.00 261.18 85.48">
-<g transform="scale(1 1) rotate(0) translate(4 81.48)">
+<p>Note: the test uses DejaVu Sans instead of Source Sans Pro in order to have predictable rendering on the CIs.</p><div class="m-graph"><svg style="width: 16.438rem; height: 6.000rem;" viewBox="0.00 0.00 263.38 95.63">
+<g transform="scale(1 1) rotate(0) translate(4 91.63)">
 <title>Basics</title>
 <g class="m-node">
 <title>a</title>
-<polygon points="54,-41.09 0,-41.09 0,-5.09 54,-5.09 54,-41.09"/>
-<text text-anchor="middle" x="27" y="-19.29">a</text>
+<polygon points="54,-43.57 0,-43.57 0,-7.57 54,-7.57 54,-43.57"/>
+<text text-anchor="middle" x="27" y="-21.62">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="114.09" cy="-23.09" rx="19.17" ry="19.17"/>
-<ellipse cx="114.09" cy="-23.09" rx="23.18" ry="23.18"/>
-<text text-anchor="middle" x="114.09" y="-19.29">b</text>
+<ellipse cx="116.57" cy="-25.57" rx="21.57" ry="21.57"/>
+<ellipse cx="116.57" cy="-25.57" rx="25.57" ry="25.57"/>
+<text text-anchor="middle" x="116.57" y="-21.62">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&gt;b</title>
-<path d="M54.46,-23.09C62.78,-23.09 72.07,-23.09 80.75,-23.09"/>
-<polygon points="80.94,-26.59 90.94,-23.09 80.94,-19.59 80.94,-26.59"/>
+<path d="M54.27,-25.57C62.08,-25.57 70.78,-25.57 79.11,-25.57"/>
+<polygon points="79,-29.07 89,-25.57 79,-22.07 79,-29.07"/>
 </g>
 <g class="m-node m-flat">
 <title>c</title>
-<ellipse cx="226.18" cy="-23.09" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="226.18" y="-19.29">c</text>
+<ellipse cx="228.38" cy="-25.57" rx="27" ry="21.57"/>
+<text text-anchor="middle" x="228.38" y="-21.62">c</text>
 </g>
 <g class="m-edge">
 <title>b&#45;&gt;c</title>
-<path d="M137.37,-23.09C152.15,-23.09 171.88,-23.09 188.89,-23.09"/>
-<polygon points="189.07,-26.59 199.07,-23.09 189.07,-19.59 189.07,-26.59"/>
-<text text-anchor="middle" x="168.18" y="-35.09" style="font-size: 40.0px;">0</text>
+<path d="M142.49,-25.57C156.4,-25.57 174.03,-25.57 189.61,-25.57"/>
+<polygon points="189.52,-29.07 199.52,-25.57 189.52,-22.07 189.52,-29.07"/>
+<text text-anchor="middle" x="171.76" y="-43.07" style="font-size: 40.0px;">0</text>
 </g>
 <g class="m-edge">
 <title>c&#45;&gt;c</title>
-<path d="M215.91,-40.31C213.81,-50.24 217.23,-59.48 226.18,-59.48 231.92,-59.48 235.38,-55.68 236.58,-50.35"/>
-<polygon points="240.08,-50.27 236.46,-40.31 233.08,-50.35 240.08,-50.27"/>
-<text text-anchor="middle" x="226.18" y="-64.68">1</text>
+<path d="M218.08,-45.92C216.65,-56.08 220.09,-65.13 228.38,-65.13 233.31,-65.13 236.52,-61.94 238.02,-57.22"/>
+<polygon points="241.5,-57.62 238.6,-47.44 234.51,-57.21 241.5,-57.62"/>
+<text text-anchor="middle" x="228.38" y="-72.43">1</text>
 </g>
 </g>
 </svg>
-</div><div class="m-graph"><svg style="width: 5.812rem; height: 8.562rem;" viewBox="0.00 0.00 93.09 136.95">
-<g transform="scale(1 1) rotate(0) translate(4 132.95)">
+</div><div class="m-graph"><svg style="width: 5.875rem; height: 9.562rem;" viewBox="0.00 0.00 94.07 152.77">
+<g transform="scale(1 1) rotate(0) translate(4 148.77)">
 <title>Colors</title>
 <g class="m-node m-success m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-110.57" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-106.77">a</text>
+<ellipse cx="27" cy="-123.2" rx="27" ry="21.57"/>
+<text text-anchor="middle" x="27" y="-119.25">a</text>
 </g>
 <g class="m-node m-dim">
 <title>b</title>
-<ellipse cx="27" cy="-19.09" rx="19.18" ry="19.18"/>
-<text text-anchor="middle" x="27" y="-15.29">b</text>
+<ellipse cx="27" cy="-21.57" rx="21.57" ry="21.57"/>
+<text text-anchor="middle" x="27" y="-17.62">b</text>
 </g>
 <g class="m-edge m-warning">
 <title>a&#45;&gt;b</title>
-<path d="M27,-91.89C27,-79.55 27,-62.82 27,-48.61"/>
-<polygon points="30.5,-48.35 27,-38.35 23.5,-48.35 30.5,-48.35"/>
-<text text-anchor="middle" x="41" y="-61.38">yes</text>
+<path d="M27,-101.56C27,-88.02 27,-70.05 27,-54.67"/>
+<polygon points="30.5,-55.04 27,-45.04 23.5,-55.04 30.5,-55.04"/>
+<text text-anchor="middle" x="39.38" y="-68.43">yes</text>
 </g>
 <g class="m-edge m-primary">
 <title>b&#45;&gt;b</title>
-<path d="M44.55,-27.24C54.67,-28.91 64.09,-26.19 64.09,-19.09 64.09,-14.54 60.23,-11.8 54.79,-10.84"/>
-<polygon points="54.52,-7.35 44.55,-10.94 54.59,-14.35 54.52,-7.35"/>
-<text text-anchor="middle" x="74.59" y="-15.29">no</text>
+<path d="M46.95,-30.76C57.27,-32.17 66.57,-29.11 66.57,-21.57 66.57,-16.97 63.11,-14.04 58.08,-12.77"/>
+<polygon points="58.58,-9.28 48.46,-12.43 58.33,-16.28 58.58,-9.28"/>
+<text text-anchor="middle" x="76.32" y="-17.62">no</text>
 </g>
 </g>
 </svg>
-</div><figure class="m-figure"><svg class="m-graph" style="width: 5rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+</div><figure class="m-figure"><svg class="m-graph" style="width: 5rem;" viewBox="0.00 0.00 62.00 130.27">
+<g transform="scale(1 1) rotate(0) translate(4 126.27)">
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-100.7" rx="27" ry="21.57"/>
+<text text-anchor="middle" x="27" y="-96.75">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-21.57" rx="27" ry="21.57"/>
+<text text-anchor="middle" x="27" y="-17.62">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&#45;b</title>
-<path d="M27,-72.66C27,-61.85 27,-48.03 27,-37.17"/>
+<path d="M27,-79.03C27,-68.05 27,-54.59 27,-43.56"/>
 </g>
 </g>
 </svg>
-<figcaption>A graph</figcaption></figure><figure class="m-figure"><svg class="m-graph" style="height: 5rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<figcaption>A graph</figcaption></figure><figure class="m-figure"><svg class="m-graph" style="height: 5rem;" viewBox="0.00 0.00 62.00 130.27">
+<g transform="scale(1 1) rotate(0) translate(4 126.27)">
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-100.7" rx="27" ry="21.57"/>
+<text text-anchor="middle" x="27" y="-96.75">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-21.57" rx="27" ry="21.57"/>
+<text text-anchor="middle" x="27" y="-17.62">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&#45;b</title>
-<path d="M27,-72.66C27,-61.85 27,-48.03 27,-37.17"/>
+<path d="M27,-79.03C27,-68.05 27,-54.59 27,-43.56"/>
 </g>
 </g>
 </svg>
index 4035037c5adb794dac5663bea100855743694d82..206d9db7e8a0bc2c5c0451c2cf8d6c66b837193b 100644 (file)
@@ -443,9 +443,13 @@ class Dot(IntegrationTestCase):
     def test(self):
         self.run_doxygen(wildcard='indexpage.xml')
 
+        # The damn thing adopted Chrome versioning apparently. No idea if the
+        # output changed in version 7, 8 or 9 already.
+        if parse_version(dot_version()) >= parse_version("10.0"):
+            file = 'page.html'
         # Used to be >= 2.44.0, but 2.42.2 appears to have the same output
-        if parse_version(dot_version()) >= parse_version("2.42.2"):
-            file = 'index.html'
+        elif parse_version(dot_version()) >= parse_version("2.42.2"):
+            file = 'index-2.html'
         else:
             file = 'index-240.html'
 
diff --git a/documentation/test_python/page_plugins/dot-2.html b/documentation/test_python/page_plugins/dot-2.html
new file mode 100644 (file)
index 0000000..289e5ab
--- /dev/null
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8" />
+  <title>Dot | My Python Project</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i%7CSource+Code+Pro:400,400i,600" />
+  <link rel="stylesheet" href="m-dark+documentation.compiled.css" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="index.html" id="m-navbar-brand" class="m-col-t-8 m-col-m-none m-left-m">My Python Project</a>
+    </div>
+  </div>
+</nav></header>
+<main><article>
+  <div class="m-container m-container-inflatable">
+    <div class="m-row">
+      <div class="m-col-l-10 m-push-l-1">
+        <h1>
+          Dot
+        </h1>
+<div class="m-graph m-warning">
+<svg style="width: 3.875rem; height: 11.875rem;" viewBox="0.00 0.00 62.00 190.31">
+<g transform="scale(1 1) rotate(0) translate(4 186.31)">
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-163.92" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-160.12">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&gt;b</title>
+<path d="M27,-145.43C27,-137.75 27,-128.54 27,-119.95"/>
+<polygon points="30.5,-119.94 27,-109.94 23.5,-119.94 30.5,-119.94"/>
+</g>
+<g class="m-node m-flat">
+<title>c</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">c</text>
+</g>
+<g class="m-edge">
+<title>b&#45;&gt;c</title>
+<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
+<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+</g>
+</g>
+</svg>
+</div>
+      </div>
+    </div>
+  </div>
+</article></main>
+</body>
+</html>
index 289e5ab723f40f004a03f4e8e1a5c8e82714d563..9b9cdd2de2060a3b8b000befc8076169521f8fda 100644 (file)
           Dot
         </h1>
 <div class="m-graph m-warning">
-<svg style="width: 3.875rem; height: 11.875rem;" viewBox="0.00 0.00 62.00 190.31">
-<g transform="scale(1 1) rotate(0) translate(4 186.31)">
+<svg style="width: 3.875rem; height: 12.312rem;" viewBox="0.00 0.00 62.00 196.67">
+<g transform="scale(1 1) rotate(0) translate(4 192.67)">
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-163.92" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-160.12">a</text>
+<ellipse cx="27" cy="-169.23" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-163.78">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">b</text>
+<ellipse cx="27" cy="-94.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-88.89">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&gt;b</title>
-<path d="M27,-145.43C27,-137.75 27,-128.54 27,-119.95"/>
-<polygon points="30.5,-119.94 27,-109.94 23.5,-119.94 30.5,-119.94"/>
+<path d="M27,-149.46C27,-142.14 27,-133.58 27,-125.45"/>
+<polygon points="30.5,-125.56 27,-115.56 23.5,-125.56 30.5,-125.56"/>
 </g>
 <g class="m-node m-flat">
 <title>c</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">c</text>
+<ellipse cx="27" cy="-19.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">c</text>
 </g>
 <g class="m-edge">
 <title>b&#45;&gt;c</title>
-<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
-<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+<path d="M27,-74.57C27,-67.25 27,-58.69 27,-50.56"/>
+<polygon points="30.5,-50.67 27,-40.67 23.5,-50.67 30.5,-50.67"/>
 </g>
 </g>
 </svg>
index 941665f4d5fb0a625c4154c5bdadf781519597ec..bf6165b49894ddc44bacf499c7595095df62d0a7 100644 (file)
@@ -81,9 +81,13 @@ class Plugins(BaseTestCase):
         })
         self.assertEqual(*self.actual_expected_contents('index.html'))
 
-        # Used to be >= 2.44.0, but 2.42.2 appears to have the same output
-        if parse_version(dot_version()) >= parse_version("2.42.2"):
+        # The damn thing adopted Chrome versioning apparently. No idea if the
+        # output changed in version 7, 8 or 9 already.
+        if parse_version(dot_version()) >= parse_version("10.0"):
             file = 'dot.html'
+        # Used to be >= 2.44.0, but 2.42.2 appears to have the same output
+        elif parse_version(dot_version()) >= parse_version("2.42.2"):
+            file = 'dot-2.html'
         else:
             file = 'dot-240.html'
         self.assertEqual(*self.actual_expected_contents('dot.html', file))
diff --git a/plugins/m/test/dot/page-2.html b/plugins/m/test/dot/page-2.html
new file mode 100644 (file)
index 0000000..32c7f6a
--- /dev/null
@@ -0,0 +1,353 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8" />
+  <title>m.dot | A Pelican Blog</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i" />
+  <link rel="stylesheet" href="static/m-dark.css" />
+  <link rel="canonical" href="page.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="./" id="m-navbar-brand" class="m-col-t-9 m-col-m-none m-left-m">A Pelican Blog</a>
+    </div>
+  </div>
+</nav></header>
+<main>
+<article>
+  <div class="m-container m-container-inflatable">
+    <div class="m-row">
+      <div class="m-col-l-10 m-push-l-1">
+        <h1>m.dot</h1>
+<!-- content -->
+<p>Note: the test uses DejaVu Sans instead of Source Sans Pro in order to have
+predictable rendering on the CIs.</p>
+<p>Different shapes, fills etc. All default colors, filled only the first node
+and the arrowheads, nothing else. Non-default font size should be preserved.</p>
+<div class="m-graph">
+<svg style="width: 16.312rem; height: 5.312rem;" viewBox="0.00 0.00 261.18 85.48">
+<g transform="scale(1 1) rotate(0) translate(4 81.48)">
+<title>Basics</title>
+<g class="m-node">
+<title>a</title>
+<polygon points="54,-41.09 0,-41.09 0,-5.09 54,-5.09 54,-41.09"/>
+<text text-anchor="middle" x="27" y="-19.29">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="114.09" cy="-23.09" rx="19.17" ry="19.17"/>
+<ellipse cx="114.09" cy="-23.09" rx="23.18" ry="23.18"/>
+<text text-anchor="middle" x="114.09" y="-19.29">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&gt;b</title>
+<path d="M54.46,-23.09C62.78,-23.09 72.07,-23.09 80.75,-23.09"/>
+<polygon points="80.94,-26.59 90.94,-23.09 80.94,-19.59 80.94,-26.59"/>
+</g>
+<g class="m-node m-flat">
+<title>c</title>
+<ellipse cx="226.18" cy="-23.09" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="226.18" y="-19.29">c</text>
+</g>
+<g class="m-edge">
+<title>b&#45;&gt;c</title>
+<path d="M137.37,-23.09C152.15,-23.09 171.88,-23.09 188.89,-23.09"/>
+<polygon points="189.07,-26.59 199.07,-23.09 189.07,-19.59 189.07,-26.59"/>
+<text text-anchor="middle" x="168.18" y="-35.09" style="font-size: 40.0px;">0</text>
+</g>
+<g class="m-edge">
+<title>c&#45;&gt;c</title>
+<path d="M215.91,-40.31C213.81,-50.24 217.23,-59.48 226.18,-59.48 231.92,-59.48 235.38,-55.68 236.58,-50.35"/>
+<polygon points="240.08,-50.27 236.46,-40.31 233.08,-50.35 240.08,-50.27"/>
+<text text-anchor="middle" x="226.18" y="-64.68">1</text>
+</g>
+</g>
+</svg>
+</div>
+<div class="m-graph">
+<svg style="width: 5.688rem; height: 2.750rem;" viewBox="0.00 0.00 91.00 44.00">
+<g transform="scale(1 1) rotate(0) translate(4 40)">
+<title>More shapes</title>
+<g class="m-node m-flat">
+<title>d</title>
+<text text-anchor="middle" x="41.5" y="-14.2">outsider</text>
+</g>
+</g>
+</svg>
+</div>
+<p>Colors:</p>
+<div class="m-graph">
+<svg style="width: 5.812rem; height: 8.562rem;" viewBox="0.00 0.00 93.09 136.95">
+<g transform="scale(1 1) rotate(0) translate(4 132.95)">
+<title>Colors</title>
+<g class="m-node m-success m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-110.57" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-106.77">a</text>
+</g>
+<g class="m-node m-dim">
+<title>b</title>
+<ellipse cx="27" cy="-19.09" rx="19.18" ry="19.18"/>
+<text text-anchor="middle" x="27" y="-15.29">b</text>
+</g>
+<g class="m-edge m-warning">
+<title>a&#45;&gt;b</title>
+<path d="M27,-91.89C27,-79.55 27,-62.82 27,-48.61"/>
+<polygon points="30.5,-48.35 27,-38.35 23.5,-48.35 30.5,-48.35"/>
+<text text-anchor="middle" x="41" y="-61.38">yes</text>
+</g>
+<g class="m-edge m-primary">
+<title>b&#45;&gt;b</title>
+<path d="M44.55,-27.24C54.67,-28.91 64.09,-26.19 64.09,-19.09 64.09,-14.54 60.23,-11.8 54.79,-10.84"/>
+<polygon points="54.52,-7.35 44.55,-10.94 54.59,-14.35 54.52,-7.35"/>
+<text text-anchor="middle" x="74.59" y="-15.29">no</text>
+</g>
+</g>
+</svg>
+</div>
+<p>Unoriented graph without a title:</p>
+<div class="m-graph m-success">
+<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&#45;b</title>
+<path d="M21.12,-73.02C19.95,-61.9 19.96,-47.45 21.14,-36.36"/>
+</g>
+<g class="m-edge">
+<title>a&#45;&#45;b</title>
+<path d="M32.88,-73.02C34.05,-61.9 34.04,-47.45 32.86,-36.36"/>
+</g>
+</g>
+</svg>
+</div>
+<p>Strict graphs:</p>
+<div class="m-graph">
+<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<title>A to B</title>
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&gt;b</title>
+<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
+<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+</g>
+</g>
+</svg>
+</div>
+<div class="m-graph">
+<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<title>A to B</title>
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&#45;b</title>
+<path d="M27,-72.66C27,-61.85 27,-48.03 27,-37.17"/>
+</g>
+</g>
+</svg>
+</div>
+<p>Structs:</p>
+<div class="m-graph">
+<svg style="width: 13.188rem; height: 5.438rem;" viewBox="0.00 0.00 210.50 87.00">
+<g transform="scale(1 1) rotate(0) translate(4 83)">
+<title>Structs</title>
+<g class="m-node m-info m-flat">
+<title>struct</title>
+<polygon points="0,-0.5 0,-78.5 79,-78.5 79,-0.5 0,-0.5"/>
+<text text-anchor="middle" x="39.5" y="-61.7">a</text>
+<polyline points="0,-52.5 79,-52.5 "/>
+<text text-anchor="middle" x="39.5" y="-35.7">b</text>
+<polyline points="0,-26.5 79,-26.5 "/>
+<text text-anchor="middle" x="13" y="-9.7">c</text>
+<polyline points="26,-0.5 26,-26.5 "/>
+<text text-anchor="middle" x="39.5" y="-9.7">d</text>
+<polyline points="53,-0.5 53,-26.5 "/>
+<text text-anchor="middle" x="66" y="-9.7">e</text>
+</g>
+<g class="m-node m-flat">
+<title>another</title>
+<polygon points="96.5,-13.5 96.5,-65.5 202.5,-65.5 202.5,-13.5 96.5,-13.5"/>
+<text text-anchor="middle" x="109.5" y="-35.7">a</text>
+<polyline points="122.5,-13.5 122.5,-65.5 "/>
+<text text-anchor="middle" x="136" y="-48.7">b</text>
+<polyline points="122.5,-39.5 149.5,-39.5 "/>
+<text text-anchor="middle" x="136" y="-22.7">c</text>
+<polyline points="149.5,-13.5 149.5,-65.5 "/>
+<text text-anchor="middle" x="163" y="-35.7">d</text>
+<polyline points="176.5,-13.5 176.5,-65.5 "/>
+<text text-anchor="middle" x="189.5" y="-35.7">e</text>
+</g>
+</g>
+</svg>
+</div>
+<figure class="m-figure">
+<svg class="m-graph m-info" style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<title>A to B</title>
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&gt;b</title>
+<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
+<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+</g>
+</g>
+</svg>
+<figcaption>This is a title.<div class="m-figure-description">
+<p>This is a description.</p>
+</div>
+</figcaption>
+</figure>
+<figure class="m-figure">
+<svg class="m-graph" style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&gt;b</title>
+<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
+<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+</g>
+</g>
+</svg>
+<p>The graph below should not be styled as a part of the figure:</p>
+<div class="m-graph m-danger">
+<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
+<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<title>A to B</title>
+<g class="m-node m-flat">
+<title>a</title>
+<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-87.35">a</text>
+</g>
+<g class="m-node m-flat">
+<title>b</title>
+<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="27" y="-14.58">b</text>
+</g>
+<g class="m-edge">
+<title>a&#45;&gt;b</title>
+<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
+<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+</g>
+</g>
+</svg>
+</div>
+</figure>
+<p>Subgraphs:</p>
+<div class="m-graph">
+<svg style="width: 10.875rem; height: 17.625rem;" viewBox="0.00 0.00 174.00 282.31">
+<g transform="scale(1 1) rotate(0) translate(4 278.31)">
+<g class="m-cluster">
+<title>cluster_Outer</title>
+<polygon points="8,-8 8,-266.31 158,-266.31 158,-8 8,-8"/>
+<text text-anchor="middle" x="83" y="-249.51">Outer</text>
+</g>
+<g class="m-cluster m-info">
+<title>cluster_Inner</title>
+<polygon points="80,-80.77 80,-232.31 150,-232.31 150,-80.77 80,-80.77"/>
+<text text-anchor="middle" x="115" y="-215.51">Inner</text>
+</g>
+<g class="m-node m-flat">
+<title>A</title>
+<ellipse cx="43" cy="-179.92" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="43" y="-176.12">A</text>
+</g>
+<g class="m-node m-flat">
+<title>B</title>
+<ellipse cx="115" cy="-107.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="115" y="-103.35">B</text>
+</g>
+<g class="m-edge">
+<title>A&#45;&gt;B</title>
+<path d="M57.92,-164.26C67.96,-154.39 81.38,-141.2 92.68,-130.09"/>
+<polygon points="95.42,-132.31 100.1,-122.8 90.52,-127.31 95.42,-132.31"/>
+</g>
+<g class="m-node m-flat">
+<title>C</title>
+<ellipse cx="43" cy="-107.15" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="43" y="-103.35">C</text>
+</g>
+<g class="m-edge">
+<title>A&#45;&gt;C</title>
+<path d="M43,-161.43C43,-153.75 43,-144.54 43,-135.95"/>
+<polygon points="46.5,-135.94 43,-125.94 39.5,-135.94 46.5,-135.94"/>
+</g>
+<g class="m-node m-flat">
+<title>D</title>
+<ellipse cx="115" cy="-34.38" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="115" y="-30.58">D</text>
+</g>
+<g class="m-edge">
+<title>B&#45;&gt;D</title>
+<path d="M115,-88.66C115,-80.98 115,-71.77 115,-63.19"/>
+<polygon points="118.5,-63.17 115,-53.17 111.5,-63.17 118.5,-63.17"/>
+</g>
+<g class="m-node m-flat">
+<title>B2</title>
+<ellipse cx="115" cy="-179.92" rx="27" ry="18.27"/>
+<text text-anchor="middle" x="115" y="-176.12">B2</text>
+</g>
+<g class="m-edge">
+<title>B2&#45;&gt;B</title>
+<path d="M115,-161.43C115,-153.75 115,-144.54 115,-135.95"/>
+<polygon points="118.5,-135.94 115,-125.94 111.5,-135.94 118.5,-135.94"/>
+</g>
+</g>
+</svg>
+</div>
+<!-- /content -->
+      </div>
+    </div>
+  </div>
+</article>
+</main>
+</body>
+</html>
index 32c7f6ab861df94dd7eb51611b3b60bff86f7a1f..da5eeafd35adafd7f8910c59506c3d4dc87325d0 100644 (file)
@@ -28,207 +28,207 @@ predictable rendering on the CIs.</p>
 <p>Different shapes, fills etc. All default colors, filled only the first node
 and the arrowheads, nothing else. Non-default font size should be preserved.</p>
 <div class="m-graph">
-<svg style="width: 16.312rem; height: 5.312rem;" viewBox="0.00 0.00 261.18 85.48">
-<g transform="scale(1 1) rotate(0) translate(4 81.48)">
+<svg style="width: 16.312rem; height: 5.500rem;" viewBox="0.00 0.00 261.39 88.39">
+<g transform="scale(1 1) rotate(0) translate(4 84.39)">
 <title>Basics</title>
 <g class="m-node">
 <title>a</title>
-<polygon points="54,-41.09 0,-41.09 0,-5.09 54,-5.09 54,-41.09"/>
-<text text-anchor="middle" x="27" y="-19.29">a</text>
+<polygon points="54,-41.45 0,-41.45 0,-5.45 54,-5.45 54,-41.45"/>
+<text text-anchor="middle" x="27" y="-18">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="114.09" cy="-23.09" rx="19.17" ry="19.17"/>
-<ellipse cx="114.09" cy="-23.09" rx="23.18" ry="23.18"/>
-<text text-anchor="middle" x="114.09" y="-19.29">b</text>
+<ellipse cx="114.45" cy="-23.45" rx="19.45" ry="19.45"/>
+<ellipse cx="114.45" cy="-23.45" rx="23.45" ry="23.45"/>
+<text text-anchor="middle" x="114.45" y="-18">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&gt;b</title>
-<path d="M54.46,-23.09C62.78,-23.09 72.07,-23.09 80.75,-23.09"/>
-<polygon points="80.94,-26.59 90.94,-23.09 80.94,-19.59 80.94,-26.59"/>
+<path d="M54.1,-23.45C62.04,-23.45 70.89,-23.45 79.27,-23.45"/>
+<polygon points="79.17,-26.95 89.17,-23.45 79.17,-19.95 79.17,-26.95"/>
 </g>
 <g class="m-node m-flat">
 <title>c</title>
-<ellipse cx="226.18" cy="-23.09" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="226.18" y="-19.29">c</text>
+<ellipse cx="226.39" cy="-23.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="226.39" y="-18">c</text>
 </g>
 <g class="m-edge">
 <title>b&#45;&gt;c</title>
-<path d="M137.37,-23.09C152.15,-23.09 171.88,-23.09 188.89,-23.09"/>
-<polygon points="189.07,-26.59 199.07,-23.09 189.07,-19.59 189.07,-26.59"/>
-<text text-anchor="middle" x="168.18" y="-35.09" style="font-size: 40.0px;">0</text>
+<path d="M138.23,-23.45C152.5,-23.45 171.24,-23.45 187.69,-23.45"/>
+<polygon points="187.65,-26.95 197.65,-23.45 187.65,-19.95 187.65,-26.95"/>
+<text text-anchor="middle" x="168.64" y="-32.7" style="font-size: 40.0px;">0</text>
 </g>
 <g class="m-edge">
 <title>c&#45;&gt;c</title>
-<path d="M215.91,-40.31C213.81,-50.24 217.23,-59.48 226.18,-59.48 231.92,-59.48 235.38,-55.68 236.58,-50.35"/>
-<polygon points="240.08,-50.27 236.46,-40.31 233.08,-50.35 240.08,-50.27"/>
-<text text-anchor="middle" x="226.18" y="-64.68">1</text>
+<path d="M216.08,-41.55C214.16,-51.62 217.59,-60.89 226.39,-60.89 231.61,-60.89 234.95,-57.62 236.39,-52.86"/>
+<polygon points="239.89,-53.16 236.66,-43.07 232.89,-52.97 239.89,-53.16"/>
+<text text-anchor="middle" x="226.39" y="-65.19">1</text>
 </g>
 </g>
 </svg>
 </div>
 <div class="m-graph">
-<svg style="width: 5.688rem; height: 2.750rem;" viewBox="0.00 0.00 91.00 44.00">
+<svg style="width: 5.625rem; height: 2.750rem;" viewBox="0.00 0.00 90.00 44.00">
 <g transform="scale(1 1) rotate(0) translate(4 40)">
 <title>More shapes</title>
 <g class="m-node m-flat">
 <title>d</title>
-<text text-anchor="middle" x="41.5" y="-14.2">outsider</text>
+<text text-anchor="middle" x="41" y="-12.55">outsider</text>
 </g>
 </g>
 </svg>
 </div>
 <p>Colors:</p>
 <div class="m-graph">
-<svg style="width: 5.812rem; height: 8.562rem;" viewBox="0.00 0.00 93.09 136.95">
-<g transform="scale(1 1) rotate(0) translate(4 132.95)">
+<svg style="width: 5.812rem; height: 8.812rem;" viewBox="0.00 0.00 92.70 141.28">
+<g transform="scale(1 1) rotate(0) translate(4 137.28)">
 <title>Colors</title>
 <g class="m-node m-success m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-110.57" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-106.77">a</text>
+<ellipse cx="27" cy="-113.84" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-108.39">a</text>
 </g>
 <g class="m-node m-dim">
 <title>b</title>
-<ellipse cx="27" cy="-19.09" rx="19.18" ry="19.18"/>
-<text text-anchor="middle" x="27" y="-15.29">b</text>
+<ellipse cx="27" cy="-19.45" rx="19.45" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">b</text>
 </g>
 <g class="m-edge m-warning">
 <title>a&#45;&gt;b</title>
-<path d="M27,-91.89C27,-79.55 27,-62.82 27,-48.61"/>
-<polygon points="30.5,-48.35 27,-38.35 23.5,-48.35 30.5,-48.35"/>
-<text text-anchor="middle" x="41" y="-61.38">yes</text>
+<path d="M27,-94.14C27,-81.62 27,-64.85 27,-50.48"/>
+<polygon points="30.5,-50.63 27,-40.63 23.5,-50.63 30.5,-50.63"/>
+<text text-anchor="middle" x="40.88" y="-61.19">yes</text>
 </g>
 <g class="m-edge m-primary">
 <title>b&#45;&gt;b</title>
-<path d="M44.55,-27.24C54.67,-28.91 64.09,-26.19 64.09,-19.09 64.09,-14.54 60.23,-11.8 54.79,-10.84"/>
-<polygon points="54.52,-7.35 44.55,-10.94 54.59,-14.35 54.52,-7.35"/>
-<text text-anchor="middle" x="74.59" y="-15.29">no</text>
+<path d="M44.72,-27.81C54.94,-29.52 64.45,-26.73 64.45,-19.45 64.45,-15.12 61.09,-12.38 56.23,-11.23"/>
+<polygon points="56.28,-7.73 46.23,-11.1 56.19,-14.73 56.28,-7.73"/>
+<text text-anchor="middle" x="74.57" y="-14">no</text>
 </g>
 </g>
 </svg>
 </div>
 <p>Unoriented graph without a title:</p>
 <div class="m-graph m-success">
-<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<svg style="width: 3.875rem; height: 7.625rem;" viewBox="0.00 0.00 62.00 121.78">
+<g transform="scale(1 1) rotate(0) translate(4 117.78)">
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-94.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-88.89">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-19.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&#45;b</title>
-<path d="M21.12,-73.02C19.95,-61.9 19.96,-47.45 21.14,-36.36"/>
+<path d="M21.05,-74.94C19.98,-63.89 19.98,-49.88 21.05,-38.83"/>
 </g>
 <g class="m-edge">
 <title>a&#45;&#45;b</title>
-<path d="M32.88,-73.02C34.05,-61.9 34.04,-47.45 32.86,-36.36"/>
+<path d="M32.95,-74.94C34.02,-63.89 34.02,-49.88 32.95,-38.83"/>
 </g>
 </g>
 </svg>
 </div>
 <p>Strict graphs:</p>
 <div class="m-graph">
-<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<svg style="width: 3.875rem; height: 7.625rem;" viewBox="0.00 0.00 62.00 121.78">
+<g transform="scale(1 1) rotate(0) translate(4 117.78)">
 <title>A to B</title>
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-94.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-88.89">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-19.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&gt;b</title>
-<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
-<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+<path d="M27,-74.57C27,-67.25 27,-58.69 27,-50.56"/>
+<polygon points="30.5,-50.67 27,-40.67 23.5,-50.67 30.5,-50.67"/>
 </g>
 </g>
 </svg>
 </div>
 <div class="m-graph">
-<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<svg style="width: 3.875rem; height: 7.625rem;" viewBox="0.00 0.00 62.00 121.78">
+<g transform="scale(1 1) rotate(0) translate(4 117.78)">
 <title>A to B</title>
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-94.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-88.89">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-19.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&#45;b</title>
-<path d="M27,-72.66C27,-61.85 27,-48.03 27,-37.17"/>
+<path d="M27,-74.57C27,-63.68 27,-50.03 27,-39.15"/>
 </g>
 </g>
 </svg>
 </div>
 <p>Structs:</p>
 <div class="m-graph">
-<svg style="width: 13.188rem; height: 5.438rem;" viewBox="0.00 0.00 210.50 87.00">
-<g transform="scale(1 1) rotate(0) translate(4 83)">
+<svg style="width: 13.000rem; height: 5.750rem;" viewBox="0.00 0.00 207.88 91.50">
+<g transform="scale(1 1) rotate(0) translate(4 87.5)">
 <title>Structs</title>
 <g class="m-node m-info m-flat">
 <title>struct</title>
-<polygon points="0,-0.5 0,-78.5 79,-78.5 79,-0.5 0,-0.5"/>
-<text text-anchor="middle" x="39.5" y="-61.7">a</text>
-<polyline points="0,-52.5 79,-52.5 "/>
-<text text-anchor="middle" x="39.5" y="-35.7">b</text>
-<polyline points="0,-26.5 79,-26.5 "/>
-<text text-anchor="middle" x="13" y="-9.7">c</text>
-<polyline points="26,-0.5 26,-26.5 "/>
-<text text-anchor="middle" x="39.5" y="-9.7">d</text>
-<polyline points="53,-0.5 53,-26.5 "/>
-<text text-anchor="middle" x="66" y="-9.7">e</text>
+<polygon points="0,-0.5 0,-83 77.25,-83 77.25,-0.5 0,-0.5"/>
+<text text-anchor="middle" x="38.62" y="-63.8">a</text>
+<polyline points="0,-55.5 77.25,-55.5"/>
+<text text-anchor="middle" x="38.62" y="-36.3">b</text>
+<polyline points="0,-28 77.25,-28"/>
+<text text-anchor="middle" x="12.5" y="-8.8">c</text>
+<polyline points="25,-0.5 25,-28"/>
+<text text-anchor="middle" x="38.25" y="-8.8">d</text>
+<polyline points="51.5,-0.5 51.5,-28"/>
+<text text-anchor="middle" x="64.38" y="-8.8">e</text>
 </g>
 <g class="m-node m-flat">
 <title>another</title>
-<polygon points="96.5,-13.5 96.5,-65.5 202.5,-65.5 202.5,-13.5 96.5,-13.5"/>
-<text text-anchor="middle" x="109.5" y="-35.7">a</text>
-<polyline points="122.5,-13.5 122.5,-65.5 "/>
-<text text-anchor="middle" x="136" y="-48.7">b</text>
-<polyline points="122.5,-39.5 149.5,-39.5 "/>
-<text text-anchor="middle" x="136" y="-22.7">c</text>
-<polyline points="149.5,-13.5 149.5,-65.5 "/>
-<text text-anchor="middle" x="163" y="-35.7">d</text>
-<polyline points="176.5,-13.5 176.5,-65.5 "/>
-<text text-anchor="middle" x="189.5" y="-35.7">e</text>
+<polygon points="95.38,-14.25 95.38,-69.25 199.88,-69.25 199.88,-14.25 95.38,-14.25"/>
+<text text-anchor="middle" x="108.25" y="-36.3">a</text>
+<polyline points="121.12,-14.25 121.12,-69.25"/>
+<text text-anchor="middle" x="134.38" y="-50.05">b</text>
+<polyline points="121.12,-41.75 147.62,-41.75"/>
+<text text-anchor="middle" x="134.38" y="-22.55">c</text>
+<polyline points="147.62,-14.25 147.62,-69.25"/>
+<text text-anchor="middle" x="160.88" y="-36.3">d</text>
+<polyline points="174.12,-14.25 174.12,-69.25"/>
+<text text-anchor="middle" x="187" y="-36.3">e</text>
 </g>
 </g>
 </svg>
 </div>
 <figure class="m-figure">
-<svg class="m-graph m-info" style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<svg class="m-graph m-info" style="width: 3.875rem; height: 7.625rem;" viewBox="0.00 0.00 62.00 121.78">
+<g transform="scale(1 1) rotate(0) translate(4 117.78)">
 <title>A to B</title>
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-94.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-88.89">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-19.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&gt;b</title>
-<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
-<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+<path d="M27,-74.57C27,-67.25 27,-58.69 27,-50.56"/>
+<polygon points="30.5,-50.67 27,-40.67 23.5,-50.67 30.5,-50.67"/>
 </g>
 </g>
 </svg>
@@ -238,44 +238,44 @@ and the arrowheads, nothing else. Non-default font size should be preserved.</p>
 </figcaption>
 </figure>
 <figure class="m-figure">
-<svg class="m-graph" style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<svg class="m-graph" style="width: 3.875rem; height: 7.625rem;" viewBox="0.00 0.00 62.00 121.78">
+<g transform="scale(1 1) rotate(0) translate(4 117.78)">
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-94.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-88.89">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-19.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&gt;b</title>
-<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
-<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+<path d="M27,-74.57C27,-67.25 27,-58.69 27,-50.56"/>
+<polygon points="30.5,-50.67 27,-40.67 23.5,-50.67 30.5,-50.67"/>
 </g>
 </g>
 </svg>
 <p>The graph below should not be styled as a part of the figure:</p>
 <div class="m-graph m-danger">
-<svg style="width: 3.875rem; height: 7.375rem;" viewBox="0.00 0.00 62.00 117.54">
-<g transform="scale(1 1) rotate(0) translate(4 113.54)">
+<svg style="width: 3.875rem; height: 7.625rem;" viewBox="0.00 0.00 62.00 121.78">
+<g transform="scale(1 1) rotate(0) translate(4 117.78)">
 <title>A to B</title>
 <g class="m-node m-flat">
 <title>a</title>
-<ellipse cx="27" cy="-91.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-87.35">a</text>
+<ellipse cx="27" cy="-94.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-88.89">a</text>
 </g>
 <g class="m-node m-flat">
 <title>b</title>
-<ellipse cx="27" cy="-18.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="27" y="-14.58">b</text>
+<ellipse cx="27" cy="-19.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="27" y="-14">b</text>
 </g>
 <g class="m-edge">
 <title>a&#45;&gt;b</title>
-<path d="M27,-72.66C27,-64.98 27,-55.77 27,-47.19"/>
-<polygon points="30.5,-47.17 27,-37.17 23.5,-47.17 30.5,-47.17"/>
+<path d="M27,-74.57C27,-67.25 27,-58.69 27,-50.56"/>
+<polygon points="30.5,-50.67 27,-40.67 23.5,-50.67 30.5,-50.67"/>
 </g>
 </g>
 </svg>
@@ -283,62 +283,62 @@ and the arrowheads, nothing else. Non-default font size should be preserved.</p>
 </figure>
 <p>Subgraphs:</p>
 <div class="m-graph">
-<svg style="width: 10.875rem; height: 17.625rem;" viewBox="0.00 0.00 174.00 282.31">
-<g transform="scale(1 1) rotate(0) translate(4 278.31)">
+<svg style="width: 10.875rem; height: 18.250rem;" viewBox="0.00 0.00 174.00 291.67">
+<g transform="scale(1 1) rotate(0) translate(4 287.67)">
 <g class="m-cluster">
 <title>cluster_Outer</title>
-<polygon points="8,-8 8,-266.31 158,-266.31 158,-8 8,-8"/>
-<text text-anchor="middle" x="83" y="-249.51">Outer</text>
+<polygon points="8,-8 8,-275.67 158,-275.67 158,-8 8,-8"/>
+<text text-anchor="middle" x="83" y="-256.47">Outer</text>
 </g>
 <g class="m-cluster m-info">
 <title>cluster_Inner</title>
-<polygon points="80,-80.77 80,-232.31 150,-232.31 150,-80.77 80,-80.77"/>
-<text text-anchor="middle" x="115" y="-215.51">Inner</text>
+<polygon points="16,-82.89 16,-240.17 86,-240.17 86,-82.89 16,-82.89"/>
+<text text-anchor="middle" x="51" y="-220.97">Inner</text>
 </g>
 <g class="m-node m-flat">
 <title>A</title>
-<ellipse cx="43" cy="-179.92" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="43" y="-176.12">A</text>
+<ellipse cx="123" cy="-185.23" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="123" y="-179.78">A</text>
 </g>
 <g class="m-node m-flat">
 <title>B</title>
-<ellipse cx="115" cy="-107.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="115" y="-103.35">B</text>
+<ellipse cx="51" cy="-110.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="51" y="-104.89">B</text>
 </g>
 <g class="m-edge">
 <title>A&#45;&gt;B</title>
-<path d="M57.92,-164.26C67.96,-154.39 81.38,-141.2 92.68,-130.09"/>
-<polygon points="95.42,-132.31 100.1,-122.8 90.52,-127.31 95.42,-132.31"/>
+<path d="M107.73,-168.77C97.99,-158.91 85.19,-145.95 74.21,-134.83"/>
+<polygon points="76.83,-132.5 67.31,-127.85 71.85,-137.42 76.83,-132.5"/>
 </g>
 <g class="m-node m-flat">
 <title>C</title>
-<ellipse cx="43" cy="-107.15" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="43" y="-103.35">C</text>
+<ellipse cx="123" cy="-110.34" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="123" y="-104.89">C</text>
 </g>
 <g class="m-edge">
 <title>A&#45;&gt;C</title>
-<path d="M43,-161.43C43,-153.75 43,-144.54 43,-135.95"/>
-<polygon points="46.5,-135.94 43,-125.94 39.5,-135.94 46.5,-135.94"/>
+<path d="M123,-165.46C123,-158.14 123,-149.58 123,-141.45"/>
+<polygon points="126.5,-141.56 123,-131.56 119.5,-141.56 126.5,-141.56"/>
 </g>
 <g class="m-node m-flat">
 <title>D</title>
-<ellipse cx="115" cy="-34.38" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="115" y="-30.58">D</text>
+<ellipse cx="51" cy="-35.45" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="51" y="-30">D</text>
 </g>
 <g class="m-edge">
 <title>B&#45;&gt;D</title>
-<path d="M115,-88.66C115,-80.98 115,-71.77 115,-63.19"/>
-<polygon points="118.5,-63.17 115,-53.17 111.5,-63.17 118.5,-63.17"/>
+<path d="M51,-90.57C51,-83.25 51,-74.69 51,-66.56"/>
+<polygon points="54.5,-66.67 51,-56.67 47.5,-66.67 54.5,-66.67"/>
 </g>
 <g class="m-node m-flat">
 <title>B2</title>
-<ellipse cx="115" cy="-179.92" rx="27" ry="18.27"/>
-<text text-anchor="middle" x="115" y="-176.12">B2</text>
+<ellipse cx="51" cy="-185.23" rx="27" ry="19.45"/>
+<text text-anchor="middle" x="51" y="-179.78">B2</text>
 </g>
 <g class="m-edge">
 <title>B2&#45;&gt;B</title>
-<path d="M115,-161.43C115,-153.75 115,-144.54 115,-135.95"/>
-<polygon points="118.5,-135.94 115,-125.94 111.5,-135.94 118.5,-135.94"/>
+<path d="M51,-165.46C51,-158.14 51,-149.58 51,-141.45"/>
+<polygon points="54.5,-141.56 51,-131.56 47.5,-141.56 54.5,-141.56"/>
 </g>
 </g>
 </svg>
index 3db606ae020a7e9042d1cb4b58a26f4e24ced401..48ca659cf26dd4ccebd53ecef3a149aae9eae652 100644 (file)
@@ -42,9 +42,13 @@ class Dot(PelicanPluginTestCase):
             'M_DOT_FONT': 'DejaVu Sans'
         })
 
-        # Used to be >= 2.44.0, but 2.42.2 appears to have the same output
-        if parse_version(dot_version()) >= parse_version("2.42.2"):
+        # The damn thing adopted Chrome versioning apparently. No idea if the
+        # output changed in version 7, 8 or 9 already.
+        if parse_version(dot_version()) >= parse_version("10.0"):
             file = 'page.html'
+        # Used to be >= 2.44.0, but 2.42.2 appears to have the same output
+        elif parse_version(dot_version()) >= parse_version("2.42.2"):
+            file = 'page-2.html'
         else:
             file = 'page-240.html'