|
|
73b847 |
From 47cb10a9c1e15b2782f1efd4b7d27bd0481324b6 Mon Sep 17 00:00:00 2001
|
|
|
73b847 |
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
|
|
|
73b847 |
Date: Tue, 26 Nov 2019 18:50:18 +0100
|
|
|
73b847 |
Subject: [PATCH 036/181] tests: Add setup mode to run tests using valgrind
|
|
|
73b847 |
|
|
|
73b847 |
In such case we need to ignore the python errors, so including a suppression
|
|
|
73b847 |
file when using --setup=valgrind.
|
|
|
73b847 |
---
|
|
|
73b847 |
tests/meson.build | 16 +++++++++++
|
|
|
73b847 |
tests/valgrind-python.supp | 55 ++++++++++++++++++++++++++++++++++++++
|
|
|
73b847 |
2 files changed, 71 insertions(+)
|
|
|
73b847 |
create mode 100644 tests/valgrind-python.supp
|
|
|
73b847 |
|
|
|
73b847 |
diff --git a/tests/meson.build b/tests/meson.build
|
|
|
73b847 |
index 1645028..0fe8096 100644
|
|
|
73b847 |
--- a/tests/meson.build
|
|
|
73b847 |
+++ b/tests/meson.build
|
|
|
73b847 |
@@ -54,3 +54,19 @@ if gdb.found()
|
|
|
73b847 |
gdb.path())
|
|
|
73b847 |
])
|
|
|
73b847 |
endif
|
|
|
73b847 |
+
|
|
|
73b847 |
+valgrind = find_program('valgrind', required: false)
|
|
|
73b847 |
+if valgrind.found()
|
|
|
73b847 |
+ glib_share = glib_dep.get_pkgconfig_variable('prefix') / 'share' / glib_dep.name()
|
|
|
73b847 |
+ glib_suppressions = glib_share + '/valgrind/glib.supp'
|
|
|
73b847 |
+ python_suppressions = '@0@/@1@'.format(meson.source_root(),
|
|
|
73b847 |
+ files('valgrind-python.supp')[0])
|
|
|
73b847 |
+ add_test_setup('valgrind',
|
|
|
73b847 |
+ timeout_multiplier: 10,
|
|
|
73b847 |
+ env: [
|
|
|
73b847 |
+ 'G_SLICE=always-malloc',
|
|
|
73b847 |
+ ('LIBFPRINT_TEST_WRAPPER=@0@ --tool=memcheck --leak-check=full ' +
|
|
|
73b847 |
+ '--suppressions=@1@ --suppressions=@2@').format(
|
|
|
73b847 |
+ valgrind.path(), glib_suppressions, python_suppressions)
|
|
|
73b847 |
+ ])
|
|
|
73b847 |
+endif
|
|
|
73b847 |
diff --git a/tests/valgrind-python.supp b/tests/valgrind-python.supp
|
|
|
73b847 |
new file mode 100644
|
|
|
73b847 |
index 0000000..395e801
|
|
|
73b847 |
--- /dev/null
|
|
|
73b847 |
+++ b/tests/valgrind-python.supp
|
|
|
73b847 |
@@ -0,0 +1,55 @@
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore_py_cond
|
|
|
73b847 |
+ Memcheck:Cond
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
+
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore__py_cond
|
|
|
73b847 |
+ Memcheck:Cond
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:_Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
+
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore_py_value8
|
|
|
73b847 |
+ Memcheck:Value8
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
+
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore__py_value8
|
|
|
73b847 |
+ Memcheck:Value8
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:_Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
+
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore_py_addr4
|
|
|
73b847 |
+ Memcheck:Addr4
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
+
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore__py_addr4
|
|
|
73b847 |
+ Memcheck:Addr4
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:_Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
+
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore_py_leaks
|
|
|
73b847 |
+ Memcheck:Leak
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
+
|
|
|
73b847 |
+{
|
|
|
73b847 |
+ ignore__py_leaks
|
|
|
73b847 |
+ Memcheck:Leak
|
|
|
73b847 |
+ ...
|
|
|
73b847 |
+ fun:_Py*
|
|
|
73b847 |
+}
|
|
|
73b847 |
--
|
|
|
73b847 |
2.24.1
|
|
|
73b847 |
|