Author: Stefan Beyer <h...@sbeyer.at>
Branch: cpyext-gc-cycle
Changeset: r95617:c46c894a7c06
Date: 2019-01-11 10:40 +0100
http://bitbucket.org/pypy/pypy/changeset/c46c894a7c06/

Log:    Added some dot tests

diff --git a/rpython/memory/gc/test/dot/free_cpython_self.dot 
b/rpython/memory/gc/test/dot/free_cpython_self.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cpython_self.dot
@@ -0,0 +1,4 @@
+digraph G {
+    "a" [type=C, alive=n];
+    "a" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_1a.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_1a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_1a.dot
@@ -0,0 +1,9 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "a" -> "c";
+    "c" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_1b.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_1b.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_1b.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "a" -> "c";
+    "c" -> "a";
+    "b" -> "c";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_2a.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_2a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_2a.dot
@@ -0,0 +1,9 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "a";
+    "b" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_2b.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_2b.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_2b.dot
@@ -0,0 +1,11 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=n];
+    "d" [type=B, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "b" -> "a";
+    "d" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_2c.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_2c.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_2c.dot
@@ -0,0 +1,13 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=n];
+    "d" [type=B, alive=n];
+    "e" [type=P, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "b" -> "a";
+    "d" -> "e";
+    "e" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_3a.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_3a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_3a.dot
@@ -0,0 +1,9 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=B, alive=n];
+    "c" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "b" -> "c";
+    "c" -> "b";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_3b.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_3b.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_3b.dot
@@ -0,0 +1,11 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=B, alive=n];
+    "c" [type=C, alive=n];
+    "d" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "b";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_multi_3c.dot 
b/rpython/memory/gc/test/dot/free_cross_multi_3c.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_multi_3c.dot
@@ -0,0 +1,11 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=P, alive=n];
+    "c" [type=B, alive=n];
+    "d" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "c";
+    "c" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_simple_1.dot 
b/rpython/memory/gc/test/dot/free_cross_simple_1.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_simple_1.dot
@@ -0,0 +1,6 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_simple_2.dot 
b/rpython/memory/gc/test/dot/free_cross_simple_2.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_simple_2.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=B, alive=n];
+    "c" [type=C, alive=n];
+    "d" [type=B, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_simple_3.dot 
b/rpython/memory/gc/test/dot/free_cross_simple_3.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_simple_3.dot
@@ -0,0 +1,12 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=P, alive=n];
+    "c" [type=B, alive=n];
+    "d" [type=C, alive=n];
+    "e" [type=B, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "e";
+    "e" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_simple_4.dot 
b/rpython/memory/gc/test/dot/free_cross_simple_4.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_simple_4.dot
@@ -0,0 +1,12 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=B, alive=n];
+    "c" [type=C, alive=n];
+    "d" [type=C, alive=n];
+    "e" [type=B, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "e";
+    "e" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_special_1a.dot 
b/rpython/memory/gc/test/dot/free_cross_special_1a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_special_1a.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=B, alive=n];
+    "d" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_special_1b.dot 
b/rpython/memory/gc/test/dot/free_cross_special_1b.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_special_1b.dot
@@ -0,0 +1,14 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=B, alive=n];
+    "d" [type=C, alive=n];
+    "e" [type=B, alive=n];
+    "f" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "e";
+    "e" -> "f";
+    "f" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_special_1c.dot 
b/rpython/memory/gc/test/dot/free_cross_special_1c.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_special_1c.dot
@@ -0,0 +1,18 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=B, alive=n];
+    "c" [type=C, alive=n];
+    "d" [type=B, alive=n];
+    "e" [type=P, alive=n];
+    "f" [type=B, alive=n];
+    "g" [type=C, alive=n];
+    "h" [type=B, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "e";
+    "e" -> "f";
+    "f" -> "g";
+    "g" -> "h";
+    "h" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_cross_special_2a.dot 
b/rpython/memory/gc/test/dot/free_cross_special_2a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_cross_special_2a.dot
@@ -0,0 +1,19 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "b" [type=B, alive=n];
+    "c" [type=C, alive=n];
+    "d" [type=B, alive=n];
+    "e" [type=P, alive=n];
+    "f" [type=B, alive=n];
+    "g" [type=C, alive=n];
+    "h" [type=B, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "e";
+    "e" -> "f";
+    "f" -> "g";
+    "g" -> "h";
+    "h" -> "a";
+    "e" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_mixed_multi_1a.dot 
b/rpython/memory/gc/test/dot/free_mixed_multi_1a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_mixed_multi_1a.dot
@@ -0,0 +1,9 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "a";
+    "c" -> "b";
+}
diff --git a/rpython/memory/gc/test/dot/free_pypy_self.dot 
b/rpython/memory/gc/test/dot/free_pypy_self.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/free_pypy_self.dot
@@ -0,0 +1,4 @@
+digraph G {
+    "a" [type=P, alive=n];
+    "a" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/free_self_cpython.dot 
b/rpython/memory/gc/test/dot/free_self_cpython.dot
deleted file mode 100644
--- a/rpython/memory/gc/test/dot/free_self_cpython.dot
+++ /dev/null
@@ -1,4 +0,0 @@
-digraph G {
-    "a" [type=C, alive=n];
-    "a" -> "a";
-}
diff --git a/rpython/memory/gc/test/dot/free_self_pypy.dot 
b/rpython/memory/gc/test/dot/free_self_pypy.dot
deleted file mode 100644
--- a/rpython/memory/gc/test/dot/free_self_pypy.dot
+++ /dev/null
@@ -1,4 +0,0 @@
-digraph G {
-    "a" [type=P, alive=n];
-    "a" -> "a";
-}
diff --git a/rpython/memory/gc/test/dot/free_simple_cross.dot 
b/rpython/memory/gc/test/dot/free_simple_cross.dot
deleted file mode 100644
--- a/rpython/memory/gc/test/dot/free_simple_cross.dot
+++ /dev/null
@@ -1,6 +0,0 @@
-digraph G {
-    "a" [type=B, alive=n];
-    "b" [type=C, alive=n];
-    "a" -> "b";
-    "b" -> "a";
-}
diff --git a/rpython/memory/gc/test/dot/keep_cpython_self.dot 
b/rpython/memory/gc/test/dot/keep_cpython_self.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_cpython_self.dot
@@ -0,0 +1,4 @@
+digraph G {
+    "a" [type=C, alive=y, ext_refcnt=1];
+    "a" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_cross_simple_1a.dot 
b/rpython/memory/gc/test/dot/keep_cross_simple_1a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_cross_simple_1a.dot
@@ -0,0 +1,6 @@
+digraph G {
+    "a" [type=B, alive=y, rooted=y];
+    "b" [type=C, alive=y];
+    "a" -> "b";
+    "b" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_cross_simple_1b.dot 
b/rpython/memory/gc/test/dot/keep_cross_simple_1b.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_cross_simple_1b.dot
@@ -0,0 +1,6 @@
+digraph G {
+    "a" [type=B, alive=y];
+    "b" [type=C, alive=y, ext_refcnt=1];
+    "a" -> "b";
+    "b" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_cross_simple_2a.dot 
b/rpython/memory/gc/test/dot/keep_cross_simple_2a.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_cross_simple_2a.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=P, alive=y, rooted=y];
+    "b" [type=B, alive=y];
+    "c" [type=C, alive=y];
+    "d" [type=B, alive=y];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_cross_simple_2b.dot 
b/rpython/memory/gc/test/dot/keep_cross_simple_2b.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_cross_simple_2b.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=P, alive=y];
+    "b" [type=B, alive=y, rooted=y];
+    "c" [type=C, alive=y];
+    "d" [type=B, alive=y];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_cross_simple_2c.dot 
b/rpython/memory/gc/test/dot/keep_cross_simple_2c.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_cross_simple_2c.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=P, alive=y];
+    "b" [type=B, alive=y];
+    "c" [type=C, alive=y, ext_refcnt=1];
+    "d" [type=B, alive=y];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_cross_simple_2d.dot 
b/rpython/memory/gc/test/dot/keep_cross_simple_2d.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_cross_simple_2d.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=P, alive=y];
+    "b" [type=B, alive=y];
+    "c" [type=C, alive=y];
+    "d" [type=B, alive=y, rooted=y];
+    "a" -> "b";
+    "b" -> "c";
+    "c" -> "d";
+    "d" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_pypy_self.dot 
b/rpython/memory/gc/test/dot/keep_pypy_self.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_pypy_self.dot
@@ -0,0 +1,4 @@
+digraph G {
+    "a" [type=P, alive=y, rooted=y];
+    "a" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_pypy_simple.dot 
b/rpython/memory/gc/test/dot/keep_pypy_simple.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/keep_pypy_simple.dot
@@ -0,0 +1,6 @@
+digraph G {
+    "a" [type=P, alive=y, rooted=y];
+    "b" [type=P, alive=y];
+    "a" -> "b";
+    "b" -> "a";
+}
diff --git a/rpython/memory/gc/test/dot/keep_self_cpython.dot 
b/rpython/memory/gc/test/dot/keep_self_cpython.dot
deleted file mode 100644
--- a/rpython/memory/gc/test/dot/keep_self_cpython.dot
+++ /dev/null
@@ -1,4 +0,0 @@
-digraph G {
-    "a" [type=C, alive=y, ext_refcnt=1];
-    "a" -> "a";
-}
diff --git a/rpython/memory/gc/test/dot/keep_self_pypy.dot 
b/rpython/memory/gc/test/dot/keep_self_pypy.dot
deleted file mode 100644
--- a/rpython/memory/gc/test/dot/keep_self_pypy.dot
+++ /dev/null
@@ -1,4 +0,0 @@
-digraph G {
-    "a" [type=P, alive=y, rooted=y];
-    "a" -> "a";
-}
diff --git a/rpython/memory/gc/test/dot/partial_free_cross_simple_1.dot 
b/rpython/memory/gc/test/dot/partial_free_cross_simple_1.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/partial_free_cross_simple_1.dot
@@ -0,0 +1,10 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=y, ext_refcnt=1];
+    "d" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "b" -> "c";
+    "b" -> "d";
+}
diff --git a/rpython/memory/gc/test/dot/partial_free_cross_simple_2.dot 
b/rpython/memory/gc/test/dot/partial_free_cross_simple_2.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/partial_free_cross_simple_2.dot
@@ -0,0 +1,12 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=C, alive=y];
+    "d" [type=C, alive=y, ext_refcnt=1];
+    "e" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "b" -> "c";
+    "d" -> "c";
+    "b" -> "e";
+}
diff --git a/rpython/memory/gc/test/dot/partial_free_cross_simple_3.dot 
b/rpython/memory/gc/test/dot/partial_free_cross_simple_3.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/partial_free_cross_simple_3.dot
@@ -0,0 +1,12 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=B, alive=y, rooted=y];
+    "d" [type=C, alive=y];
+    "e" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "b" -> "d";
+    "c" -> "d";
+    "b" -> "e";
+}
diff --git a/rpython/memory/gc/test/dot/partial_free_cross_simple_4.dot 
b/rpython/memory/gc/test/dot/partial_free_cross_simple_4.dot
new file mode 100644
--- /dev/null
+++ b/rpython/memory/gc/test/dot/partial_free_cross_simple_4.dot
@@ -0,0 +1,14 @@
+digraph G {
+    "a" [type=B, alive=n];
+    "b" [type=C, alive=n];
+    "c" [type=P, alive=y, rooted=y];
+    "d" [type=B, alive=y];
+    "e" [type=C, alive=y];
+    "f" [type=C, alive=n];
+    "a" -> "b";
+    "b" -> "a";
+    "b" -> "e";
+    "c" -> "d";
+    "d" -> "e";
+    "b" -> "f";
+}
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to