-
Notifications
You must be signed in to change notification settings - Fork 111
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(gd): Wrap node name in
\tikz@pp@name
#1119
* fix(gd): Wrap node name in `\tikz@pp@name` when tikz calls `\pgfgdedge`. Signed-off-by: muzimuzhi <[email protected]> * fix(gd): Add `\tikz@pp@name` for edge kind `-!-` Signed-off-by: muzimuzhi <[email protected]> * test(gd)!: New test set and its first test The gd test set only runs on LuaTeX. `pgfgd-debug.lua` adds debugging code to `InterfaceToDisplay` functions which helps in checking tests based on states of display layer (Lua), rather than box content. Signed-off-by: muzimuzhi <[email protected]> * chore: Add changelog entries Signed-off-by: muzimuzhi <[email protected]> * test(gd): optimize Lua code Signed-off-by: Henri Menke <[email protected]> * fixup! test(gd): optimize Lua code Signed-off-by: Henri Menke <[email protected]> * fixup! fixup! test(gd): optimize Lua code Signed-off-by: Henri Menke <[email protected]> * feat(ci): Archive failed test output for all test sets This extends #1114, commit 2bff7c6 Signed-off-by: muzimuzhi <[email protected]> * fixup! fixup! fixup! test(gd): optimize Lua code - Load `pgfgd-test.lua` after gd lib. - Update test file (no prefix, no ending period). Signed-off-by: muzimuzhi <[email protected]> Co-authored-by: Henri Menke <[email protected]>
- Loading branch information
Showing
10 changed files
with
184 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
-- Tests for graph drawing (gd) library | ||
|
||
stdengine = "luatex" | ||
checkengines = {"luatex"} | ||
testfiledir = "testfiles-gd" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
local InterfaceToDisplay = assert(pgf.gd.interface.InterfaceToDisplay) | ||
|
||
-- helper | ||
local function typeout(...) | ||
texio.write_nl(17, "Gd Lua layer Info: " .. string.format(...)) | ||
end | ||
|
||
local createVertex = assert(InterfaceToDisplay.createVertex) | ||
function InterfaceToDisplay.createVertex(name, ...) | ||
typeout("Create vertex '%s'", name) | ||
createVertex(name, ...) | ||
end | ||
|
||
local createEdge = assert(InterfaceToDisplay.createEdge) | ||
function InterfaceToDisplay.createEdge(tail, head, direction, ...) | ||
typeout("Create edge '%s' from '%s' to '%s'", direction, tail, head) | ||
createEdge(tail, head, direction, ...) | ||
end | ||
|
||
--[[ this generates too many debugging lines | ||
local createEvent = assert(InterfaceToDisplay.createEvent) | ||
function InterfaceToDisplay.createEvent(kind, ...) | ||
typeout("Create event '%s'", kind) | ||
return createEvent(kind, ...) | ||
end | ||
--]] | ||
|
||
local addToVertexOptions = assert(InterfaceToDisplay.addToVertexOptions) | ||
function InterfaceToDisplay.addToVertexOptions(name, ...) | ||
typeout("Add options to vertex '%s'", name) | ||
addToVertexOptions(name, ...) | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
\input regression-test.tex | ||
|
||
\ifdefined\directlua | ||
\AtBeginDocument{\directlua{dofile('pgfgd-debug.lua')}} | ||
\fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
\documentclass{minimal} | ||
\input{pgfgd-regression-test} | ||
|
||
\RequirePackage{tikz} | ||
\usetikzlibrary{graphs, graphdrawing} | ||
\usegdlibrary{layered} | ||
|
||
\makeatletter | ||
\def\pgfutil@packageerror#1#2#3{\immediate\write17{Package #1 Error: #2.}} | ||
\makeatother | ||
\begin{document} | ||
|
||
\START | ||
|
||
% use all five edge kinds | ||
% make node names variable, to prevent false negative results | ||
\def\testgraph#1{ a#1 -> {b#1, c#1 <-> d#1} -- e#1 <- f#1; a#1 -!- f#1; } | ||
\SEPARATOR | ||
\TYPE{Base graph: \testgraph{}} | ||
\SEPARATOR | ||
|
||
\BEGINTEST{Empty `name prefix`} | ||
\tikzpicture | ||
\graph[layered layout] { [parse/.expand once=\testgraph{1}] }; | ||
\path (b1); | ||
\path[name prefix=z-] (b1); | ||
\endtikzpicture | ||
\ENDTEST | ||
|
||
\BEGINTEST{Non-empty `name prefix`} | ||
\tikzpicture[name prefix=x-] | ||
\graph[layered layout] { [parse/.expand once=\testgraph{2}] }; | ||
|
||
% works | ||
\path (b2) (x-b2); | ||
\path[name prefix=] (x-b2); | ||
\path[name prefix=y-] (x-b2); | ||
|
||
% should throw errors | ||
\path[name prefix=] (b2); | ||
\endtikzpicture | ||
\ENDTEST | ||
|
||
\BEGINTEST{Simple non-gd graph + Empty `name suffix`} | ||
\tikzpicture | ||
\graph { [parse/.expand once=\testgraph{3}] }; | ||
\path (b3); | ||
\path[name suffix=-z] (b3); | ||
\endtikzpicture | ||
\ENDTEST | ||
|
||
\BEGINTEST{Simple non-gd graph + Non-empty `name suffix`} | ||
\tikzpicture[name suffix=-x] | ||
\graph { [parse/.expand once=\testgraph{4}] }; | ||
|
||
% works | ||
\path (b4) (b4-x); | ||
\path[name suffix=] (b4-x); | ||
\path[name suffix=-y] (b4-x); | ||
|
||
% throws errors | ||
\path[name suffix=] (b4); | ||
\endtikzpicture | ||
\ENDTEST | ||
|
||
\END |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
This is a generated file for the l3build validation system. | ||
Don't change this file in any respect. | ||
============================================================ | ||
Base graph: a -> {b, c <-> d} -- e <- f; a -!- f; | ||
============================================================ | ||
============================================================ | ||
TEST 1: Empty `name prefix` | ||
============================================================ | ||
Gd Lua layer Info: Create vertex 'a1' | ||
Gd Lua layer Info: Create vertex 'b1' | ||
Gd Lua layer Info: Create vertex 'c1' | ||
Gd Lua layer Info: Create vertex 'd1' | ||
Gd Lua layer Info: Create edge '<->' from 'c1' to 'd1' | ||
Gd Lua layer Info: Create edge '->' from 'a1' to 'b1' | ||
Gd Lua layer Info: Create edge '->' from 'a1' to 'c1' | ||
Gd Lua layer Info: Create vertex 'e1' | ||
Gd Lua layer Info: Create edge '--' from 'b1' to 'e1' | ||
Gd Lua layer Info: Create edge '--' from 'd1' to 'e1' | ||
Gd Lua layer Info: Create vertex 'f1' | ||
Gd Lua layer Info: Create edge '<-' from 'e1' to 'f1' | ||
Gd Lua layer Info: Add options to vertex 'a1' | ||
Gd Lua layer Info: Add options to vertex 'a1' | ||
Gd Lua layer Info: Add options to vertex 'f1' | ||
Gd Lua layer Info: Add options to vertex 'f1' | ||
Gd Lua layer Info: Create edge '-!-' from 'a1' to 'f1' | ||
============================================================ | ||
============================================================ | ||
TEST 2: Non-empty `name prefix` | ||
============================================================ | ||
Gd Lua layer Info: Create vertex 'x-a2' | ||
Gd Lua layer Info: Create vertex 'x-b2' | ||
Gd Lua layer Info: Create vertex 'x-c2' | ||
Gd Lua layer Info: Create vertex 'x-d2' | ||
Gd Lua layer Info: Create edge '<->' from 'x-c2' to 'x-d2' | ||
Gd Lua layer Info: Create edge '->' from 'x-a2' to 'x-b2' | ||
Gd Lua layer Info: Create edge '->' from 'x-a2' to 'x-c2' | ||
Gd Lua layer Info: Create vertex 'x-e2' | ||
Gd Lua layer Info: Create edge '--' from 'x-b2' to 'x-e2' | ||
Gd Lua layer Info: Create edge '--' from 'x-d2' to 'x-e2' | ||
Gd Lua layer Info: Create vertex 'x-f2' | ||
Gd Lua layer Info: Create edge '<-' from 'x-e2' to 'x-f2' | ||
Gd Lua layer Info: Add options to vertex 'x-a2' | ||
Gd Lua layer Info: Add options to vertex 'x-a2' | ||
Gd Lua layer Info: Add options to vertex 'x-f2' | ||
Gd Lua layer Info: Add options to vertex 'x-f2' | ||
Gd Lua layer Info: Create edge '-!-' from 'x-a2' to 'x-f2' | ||
Package pgf Error: No shape named `b2' is known. | ||
============================================================ | ||
============================================================ | ||
TEST 3: Simple non-gd graph + Empty `name suffix` | ||
============================================================ | ||
============================================================ | ||
============================================================ | ||
TEST 4: Simple non-gd graph + Non-empty `name suffix` | ||
============================================================ | ||
Package pgf Error: No shape named `b4' is known. | ||
============================================================ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters