summaryrefslogtreecommitdiff
path: root/gtk+-mingw/share/gtk-doc/html/glib/glib-Testing.html
diff options
context:
space:
mode:
authorLeo Tenenbaum <pommicket@gmail.com>2018-08-20 21:12:06 -0400
committerLeo Tenenbaum <pommicket@gmail.com>2018-08-20 21:12:06 -0400
commit63e87c2d0c9d263f14c77b68f85c67d46ece82a9 (patch)
tree6260365cbf7d24f37d27669e8538227fcb72e243 /gtk+-mingw/share/gtk-doc/html/glib/glib-Testing.html
parenta4460f6d9453bbd7e584937686449cef3e19f052 (diff)
Removed gtk+ docsHEADmaster
Diffstat (limited to 'gtk+-mingw/share/gtk-doc/html/glib/glib-Testing.html')
-rw-r--r--gtk+-mingw/share/gtk-doc/html/glib/glib-Testing.html1824
1 files changed, 0 insertions, 1824 deletions
diff --git a/gtk+-mingw/share/gtk-doc/html/glib/glib-Testing.html b/gtk+-mingw/share/gtk-doc/html/glib/glib-Testing.html
deleted file mode 100644
index 742ea4d..0000000
--- a/gtk+-mingw/share/gtk-doc/html/glib/glib-Testing.html
+++ /dev/null
@@ -1,1824 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Testing</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="GLib Reference Manual">
-<link rel="up" href="glib-utilities.html" title="GLib Utilities">
-<link rel="prev" href="glib-Bookmark-file-parser.html" title="Bookmark file parser">
-<link rel="next" href="glib-UNIX-specific-utilities-and-integration.html" title="UNIX-specific utilities and integration">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="glib-Bookmark-file-parser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="glib-utilities.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">GLib Reference Manual</th>
-<td><a accesskey="n" href="glib-UNIX-specific-utilities-and-integration.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a href="#glib-Testing.synopsis" class="shortcut">Top</a>
-  | 
- <a href="#glib-Testing.description" class="shortcut">Description</a>
-</td></tr>
-</table>
-<div class="refentry">
-<a name="glib-Testing"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="glib-Testing.top_of_page"></a>Testing</span></h2>
-<p>Testing — a test framework</p>
-</td>
-<td valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsynopsisdiv">
-<a name="glib-Testing.synopsis"></a><h2>Synopsis</h2>
-<pre class="synopsis">
-#include &lt;glib.h&gt;
-
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-minimized-result" title="g_test_minimized_result ()">g_test_minimized_result</a> (<em class="parameter"><code><span class="type">double</span> minimized_quantity</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
- <em class="parameter"><code>...</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-maximized-result" title="g_test_maximized_result ()">g_test_maximized_result</a> (<em class="parameter"><code><span class="type">double</span> maximized_quantity</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
- <em class="parameter"><code>...</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()">g_test_init</a> (<em class="parameter"><code><span class="type">int</span> *argc</code></em>,
- <em class="parameter"><code><span class="type">char</span> ***argv</code></em>,
- <em class="parameter"><code>...</code></em>);
-#define <a class="link" href="glib-Testing.html#g-test-quick" title="g_test_quick">g_test_quick</a>
-#define <a class="link" href="glib-Testing.html#g-test-slow" title="g_test_slow">g_test_slow</a>
-#define <a class="link" href="glib-Testing.html#g-test-thorough" title="g_test_thorough">g_test_thorough</a>
-#define <a class="link" href="glib-Testing.html#g-test-perf" title="g_test_perf">g_test_perf</a>
-#define <a class="link" href="glib-Testing.html#g-test-verbose" title="g_test_verbose">g_test_verbose</a>
-#define <a class="link" href="glib-Testing.html#g-test-undefined" title="g_test_undefined">g_test_undefined</a>
-#define <a class="link" href="glib-Testing.html#g-test-quiet" title="g_test_quiet">g_test_quiet</a>
-<span class="returnvalue">int</span> <a class="link" href="glib-Testing.html#g-test-run" title="g_test_run ()">g_test_run</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">void</span> (<a class="link" href="glib-Testing.html#GTestFunc" title="GTestFunc ()">*GTestFunc</a>) (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-add-func" title="g_test_add_func ()">g_test_add_func</a> (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFunc" title="GTestFunc ()"><span class="type">GTestFunc</span></a> test_func</code></em>);
-<span class="returnvalue">void</span> (<a class="link" href="glib-Testing.html#GTestDataFunc" title="GTestDataFunc ()">*GTestDataFunc</a>) (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> user_data</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-add-data-func" title="g_test_add_data_func ()">g_test_add_data_func</a> (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestDataFunc" title="GTestDataFunc ()"><span class="type">GTestDataFunc</span></a> test_func</code></em>);
-#define <a class="link" href="glib-Testing.html#g-test-add" title="g_test_add()">g_test_add</a> (testpath,
- Fixture,
- tdata,
- fsetup,
- ftest,
- fteardown)
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-fail" title="g_test_fail ()">g_test_fail</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-message" title="g_test_message ()">g_test_message</a> (<em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
- <em class="parameter"><code>...</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-bug-base" title="g_test_bug_base ()">g_test_bug_base</a> (<em class="parameter"><code>const <span class="type">char</span> *uri_pattern</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-bug" title="g_test_bug ()">g_test_bug</a> (<em class="parameter"><code>const <span class="type">char</span> *bug_uri_snippet</code></em>);
-<a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> (<a class="link" href="glib-Testing.html#GTestLogFatalFunc" title="GTestLogFatalFunc ()">*GTestLogFatalFunc</a>) (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *log_domain</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Message-Logging.html#GLogLevelFlags" title="enum GLogLevelFlags"><span class="type">GLogLevelFlags</span></a> log_level</code></em>,
- <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *message</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-log-set-fatal-handler" title="g_test_log_set_fatal_handler ()">g_test_log_set_fatal_handler</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestLogFatalFunc" title="GTestLogFatalFunc ()"><span class="type">GTestLogFatalFunc</span></a> log_func</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-timer-start" title="g_test_timer_start ()">g_test_timer_start</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()">g_test_timer_elapsed</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-timer-last" title="g_test_timer_last ()">g_test_timer_last</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-queue-free" title="g_test_queue_free ()">g_test_queue_free</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> gfree_pointer</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()">g_test_queue_destroy</a> (<em class="parameter"><code><a class="link" href="glib-Datasets.html#GDestroyNotify" title="GDestroyNotify ()"><span class="type">GDestroyNotify</span></a> destroy_func</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> destroy_data</code></em>);
-#define <a class="link" href="glib-Testing.html#g-test-queue-unref" title="g_test_queue_unref()">g_test_queue_unref</a> (gobject)
-enum <a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags">GTestTrapFlags</a>;
-<a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()">g_test_trap_fork</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="type">guint64</span></a> usec_timeout</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags"><span class="type">GTestTrapFlags</span></a> test_trap_flags</code></em>);
-<a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Testing.html#g-test-trap-has-passed" title="g_test_trap_has_passed ()">g_test_trap_has_passed</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="glib-Testing.html#g-test-trap-reached-timeout" title="g_test_trap_reached_timeout ()">g_test_trap_reached_timeout</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-#define <a class="link" href="glib-Testing.html#g-test-trap-assert-passed" title="g_test_trap_assert_passed">g_test_trap_assert_passed</a>
-#define <a class="link" href="glib-Testing.html#g-test-trap-assert-failed" title="g_test_trap_assert_failed">g_test_trap_assert_failed</a>
-#define <a class="link" href="glib-Testing.html#g-test-trap-assert-stdout" title="g_test_trap_assert_stdout()">g_test_trap_assert_stdout</a> (soutpattern)
-#define <a class="link" href="glib-Testing.html#g-test-trap-assert-stdout-unmatched" title="g_test_trap_assert_stdout_unmatched()">g_test_trap_assert_stdout_unmatched</a> (soutpattern)
-#define <a class="link" href="glib-Testing.html#g-test-trap-assert-stderr" title="g_test_trap_assert_stderr()">g_test_trap_assert_stderr</a> (serrpattern)
-#define <a class="link" href="glib-Testing.html#g-test-trap-assert-stderr-unmatched" title="g_test_trap_assert_stderr_unmatched()">g_test_trap_assert_stderr_unmatched</a> (serrpattern)
-#define <a class="link" href="glib-Testing.html#g-test-rand-bit" title="g_test_rand_bit">g_test_rand_bit</a>
-<a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()">g_test_rand_int</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> <a class="link" href="glib-Testing.html#g-test-rand-int-range" title="g_test_rand_int_range ()">g_test_rand_int_range</a> (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> begin</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> end</code></em>);
-<span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-rand-double" title="g_test_rand_double ()">g_test_rand_double</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">double</span> <a class="link" href="glib-Testing.html#g-test-rand-double-range" title="g_test_rand_double_range ()">g_test_rand_double_range</a> (<em class="parameter"><code><span class="type">double</span> range_start</code></em>,
- <em class="parameter"><code><span class="type">double</span> range_end</code></em>);
-#define <a class="link" href="glib-Testing.html#g-assert" title="g_assert()">g_assert</a> (expr)
-#define <a class="link" href="glib-Testing.html#g-assert-not-reached" title="g_assert_not_reached">g_assert_not_reached</a>
-#define <a class="link" href="glib-Testing.html#g-assert-cmpstr" title="g_assert_cmpstr()">g_assert_cmpstr</a> (s1,
- cmp,
- s2)
-#define <a class="link" href="glib-Testing.html#g-assert-cmpint" title="g_assert_cmpint()">g_assert_cmpint</a> (n1,
- cmp,
- n2)
-#define <a class="link" href="glib-Testing.html#g-assert-cmpuint" title="g_assert_cmpuint()">g_assert_cmpuint</a> (n1,
- cmp,
- n2)
-#define <a class="link" href="glib-Testing.html#g-assert-cmphex" title="g_assert_cmphex()">g_assert_cmphex</a> (n1,
- cmp,
- n2)
-#define <a class="link" href="glib-Testing.html#g-assert-cmpfloat" title="g_assert_cmpfloat()">g_assert_cmpfloat</a> (n1,
- cmp,
- n2)
-#define <a class="link" href="glib-Testing.html#g-assert-no-error" title="g_assert_no_error()">g_assert_no_error</a> (err)
-#define <a class="link" href="glib-Testing.html#g-assert-error" title="g_assert_error()">g_assert_error</a> (err,
- dom,
- c)
-typedef <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase">GTestCase</a>;
-typedef <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite">GTestSuite</a>;
-<span class="returnvalue">void</span> (<a class="link" href="glib-Testing.html#GTestFixtureFunc" title="GTestFixtureFunc ()">*GTestFixtureFunc</a>) (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> fixture</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> user_data</code></em>);
-<a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="returnvalue">GTestCase</span></a> * <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()">g_test_create_case</a> (<em class="parameter"><code>const <span class="type">char</span> *test_name</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> data_size</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFixtureFunc" title="GTestFixtureFunc ()"><span class="type">GTestFixtureFunc</span></a> data_setup</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFixtureFunc" title="GTestFixtureFunc ()"><span class="type">GTestFixtureFunc</span></a> data_test</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFixtureFunc" title="GTestFixtureFunc ()"><span class="type">GTestFixtureFunc</span></a> data_teardown</code></em>);
-<a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a> * <a class="link" href="glib-Testing.html#g-test-create-suite" title="g_test_create_suite ()">g_test_create_suite</a> (<em class="parameter"><code>const <span class="type">char</span> *suite_name</code></em>);
-<a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a> * <a class="link" href="glib-Testing.html#g-test-get-root" title="g_test_get_root ()">g_test_get_root</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-suite-add" title="g_test_suite_add ()">g_test_suite_add</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a> *test_case</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="glib-Testing.html#g-test-suite-add-suite" title="g_test_suite_add_suite ()">g_test_suite_add_suite</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *nestedsuite</code></em>);
-<span class="returnvalue">int</span> <a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()">g_test_run_suite</a> (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>);
-</pre>
-</div>
-<div class="refsect1">
-<a name="glib-Testing.description"></a><h2>Description</h2>
-<p>
-GLib provides a framework for writing and maintaining unit tests
-in parallel to the code they are testing. The API is designed according
-to established concepts found in the other test frameworks (JUnit, NUnit,
-RUnit), which in turn is based on smalltalk unit testing concepts.
-</p>
-<p>
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term">Test case</span></p></td>
-<td>Tests (test methods) are grouped together with their
- fixture into test cases.</td>
-</tr>
-<tr>
-<td><p><span class="term">Fixture</span></p></td>
-<td>A test fixture consists of fixture data and setup and
- teardown methods to establish the environment for the test
- functions. We use fresh fixtures, i.e. fixtures are newly set
- up and torn down around each test invocation to avoid dependencies
- between tests.</td>
-</tr>
-<tr>
-<td><p><span class="term">Test suite</span></p></td>
-<td>Test cases can be grouped into test suites, to allow
- subsets of the available tests to be run. Test suites can be
- grouped into other test suites as well.</td>
-</tr>
-</tbody>
-</table></div>
-<p>
-The API is designed to handle creation and registration of test suites
-and test cases implicitly. A simple call like
-</p>
-<div class="informalexample"><pre class="programlisting">
- g_test_add_func ("/misc/assertions", test_assertions);
-</pre></div>
-<p>
-creates a test suite called "misc" with a single test case named
-"assertions", which consists of running the test_assertions function.
-</p>
-<p>
-In addition to the traditional <a class="link" href="glib-Testing.html#g-assert" title="g_assert()"><code class="function">g_assert()</code></a>, the test framework provides
-an extended set of assertions for string and numerical comparisons:
-<a class="link" href="glib-Testing.html#g-assert-cmpfloat" title="g_assert_cmpfloat()"><code class="function">g_assert_cmpfloat()</code></a>, <a class="link" href="glib-Testing.html#g-assert-cmpint" title="g_assert_cmpint()"><code class="function">g_assert_cmpint()</code></a>, <a class="link" href="glib-Testing.html#g-assert-cmpuint" title="g_assert_cmpuint()"><code class="function">g_assert_cmpuint()</code></a>,
-<a class="link" href="glib-Testing.html#g-assert-cmphex" title="g_assert_cmphex()"><code class="function">g_assert_cmphex()</code></a>, <a class="link" href="glib-Testing.html#g-assert-cmpstr" title="g_assert_cmpstr()"><code class="function">g_assert_cmpstr()</code></a>. The advantage of these variants
-over plain <a class="link" href="glib-Testing.html#g-assert" title="g_assert()"><code class="function">g_assert()</code></a> is that the assertion messages can be more
-elaborate, and include the values of the compared entities.
-</p>
-<p>
-GLib ships with two utilities called gtester and gtester-report to
-facilitate running tests and producing nicely formatted test reports.
-</p>
-</div>
-<div class="refsect1">
-<a name="glib-Testing.details"></a><h2>Details</h2>
-<div class="refsect2">
-<a name="g-test-minimized-result"></a><h3>g_test_minimized_result ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_minimized_result (<em class="parameter"><code><span class="type">double</span> minimized_quantity</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
- <em class="parameter"><code>...</code></em>);</pre>
-<p>
-Report the result of a performance or measurement test.
-The test should generally strive to minimize the reported
-quantities (smaller values are better than larger ones),
-this and <em class="parameter"><code>minimized_quantity</code></em> can determine sorting
-order for test result reports.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>minimized_quantity</code></em> :</span></p></td>
-<td>the reported value</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
-<td>the format string of the report message</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
-<td>arguments to pass to the <code class="function">printf()</code> function</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-maximized-result"></a><h3>g_test_maximized_result ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_maximized_result (<em class="parameter"><code><span class="type">double</span> maximized_quantity</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
- <em class="parameter"><code>...</code></em>);</pre>
-<p>
-Report the result of a performance or measurement test.
-The test should generally strive to maximize the reported
-quantities (larger values are better than smaller ones),
-this and <em class="parameter"><code>maximized_quantity</code></em> can determine sorting
-order for test result reports.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>maximized_quantity</code></em> :</span></p></td>
-<td>the reported value</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
-<td>the format string of the report message</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
-<td>arguments to pass to the <code class="function">printf()</code> function</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-init"></a><h3>g_test_init ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_init (<em class="parameter"><code><span class="type">int</span> *argc</code></em>,
- <em class="parameter"><code><span class="type">char</span> ***argv</code></em>,
- <em class="parameter"><code>...</code></em>);</pre>
-<p>
-Initialize the GLib testing framework, e.g. by seeding the
-test random number generator, the name for <a class="link" href="glib-Miscellaneous-Utility-Functions.html#g-get-prgname" title="g_get_prgname ()"><code class="function">g_get_prgname()</code></a>
-and parsing test related command line args.
-So far, the following arguments are understood:
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><code class="option">-l</code></span></p></td>
-<td><p>
- list test cases available in a test executable.
- </p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">--seed=<em class="replaceable"><code>RANDOMSEED</code></em></code></span></p></td>
-<td><p>
- provide a random seed to reproduce test runs using random numbers.
- </p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">--verbose</code></span></p></td>
-<td><p>run tests verbosely.</p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">-q</code>, <code class="option">--quiet</code></span></p></td>
-<td><p>run tests quietly.</p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">-p <em class="replaceable"><code>TESTPATH</code></em></code></span></p></td>
-<td><p>
- execute all tests matching <em class="replaceable"><code>TESTPATH</code></em>.
- </p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">-m {perf|slow|thorough|quick|undefined|no-undefined}</code></span></p></td>
-<td>
-<p>
- execute tests according to these test modes:
- </p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term">perf</span></p></td>
-<td><p>
- performance tests, may take long and report results.
- </p></td>
-</tr>
-<tr>
-<td><p><span class="term">slow, thorough</span></p></td>
-<td><p>
- slow and thorough tests, may take quite long and
- maximize coverage.
- </p></td>
-</tr>
-<tr>
-<td><p><span class="term">quick</span></p></td>
-<td><p>
- quick tests, should run really quickly and give good coverage.
- </p></td>
-</tr>
-<tr>
-<td><p><span class="term">undefined</span></p></td>
-<td><p>
- tests for undefined behaviour, may provoke programming errors
- under <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a> to check that appropriate assertions
- or warnings are given
- </p></td>
-</tr>
-<tr>
-<td><p><span class="term">no-undefined</span></p></td>
-<td><p>
- avoid tests for undefined behaviour
- </p></td>
-</tr>
-</tbody>
-</table></div>
-<p>
- </p>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">--debug-log</code></span></p></td>
-<td><p>debug test logging output.</p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">-k</code>, <code class="option">--keep-going</code></span></p></td>
-<td><p>gtester-specific argument.</p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">--GTestLogFD <em class="replaceable"><code>N</code></em></code></span></p></td>
-<td><p>gtester-specific argument.</p></td>
-</tr>
-<tr>
-<td><p><span class="term"><code class="option">--GTestSkipCount <em class="replaceable"><code>N</code></em></code></span></p></td>
-<td><p>gtester-specific argument.</p></td>
-</tr>
-</tbody>
-</table></div>
-<p>
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>argc</code></em> :</span></p></td>
-<td>Address of the <em class="parameter"><code>argc</code></em> parameter of the <code class="function">main()</code> function.
-Changed if any arguments were handled.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>argv</code></em> :</span></p></td>
-<td>Address of the <em class="parameter"><code>argv</code></em> parameter of <code class="function">main()</code>.
-Any parameters understood by <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()"><code class="function">g_test_init()</code></a> stripped before return.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
-<td>Reserved for future extension. Currently, you must pass <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-quick"></a><h3>g_test_quick</h3>
-<pre class="programlisting">#define g_test_quick()</pre>
-<p>
-Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in quick mode.
-Exactly one of <a class="link" href="glib-Testing.html#g-test-quick" title="g_test_quick"><code class="function">g_test_quick()</code></a> and <a class="link" href="glib-Testing.html#g-test-slow" title="g_test_slow"><code class="function">g_test_slow()</code></a> is active in any run;
-there is no "medium speed".
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if in quick mode</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-slow"></a><h3>g_test_slow</h3>
-<pre class="programlisting">#define g_test_slow()</pre>
-<p>
-Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in slow mode.
-Exactly one of <a class="link" href="glib-Testing.html#g-test-quick" title="g_test_quick"><code class="function">g_test_quick()</code></a> and <a class="link" href="glib-Testing.html#g-test-slow" title="g_test_slow"><code class="function">g_test_slow()</code></a> is active in any run;
-there is no "medium speed".
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the opposite of <a class="link" href="glib-Testing.html#g-test-quick" title="g_test_quick"><code class="function">g_test_quick()</code></a>
-</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-thorough"></a><h3>g_test_thorough</h3>
-<pre class="programlisting">#define g_test_thorough()</pre>
-<p>
-Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in thorough mode, equivalent to
-<a class="link" href="glib-Testing.html#g-test-slow" title="g_test_slow"><code class="function">g_test_slow()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the same thing as <a class="link" href="glib-Testing.html#g-test-slow" title="g_test_slow"><code class="function">g_test_slow()</code></a>
-</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-perf"></a><h3>g_test_perf</h3>
-<pre class="programlisting">#define g_test_perf()</pre>
-<p>
-Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in performance mode.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if in performance mode</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-verbose"></a><h3>g_test_verbose</h3>
-<pre class="programlisting">#define g_test_verbose()</pre>
-<p>
-Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in verbose mode.
-The default is neither <a class="link" href="glib-Testing.html#g-test-verbose" title="g_test_verbose"><code class="function">g_test_verbose()</code></a> nor <a class="link" href="glib-Testing.html#g-test-quiet" title="g_test_quiet"><code class="function">g_test_quiet()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if in verbose mode</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-undefined"></a><h3>g_test_undefined</h3>
-<pre class="programlisting">#define g_test_undefined()</pre>
-<p>
-Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests may provoke assertions and other formally-undefined
-behaviour under <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>, to verify that appropriate warnings
-are given. It can be useful to turn this off if running tests under
-valgrind.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests may provoke programming errors</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-quiet"></a><h3>g_test_quiet</h3>
-<pre class="programlisting">#define g_test_quiet()</pre>
-<p>
-Returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if tests are run in quiet mode.
-The default is neither <a class="link" href="glib-Testing.html#g-test-verbose" title="g_test_verbose"><code class="function">g_test_verbose()</code></a> nor <a class="link" href="glib-Testing.html#g-test-quiet" title="g_test_quiet"><code class="function">g_test_quiet()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if in quiet mode</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-run"></a><h3>g_test_run ()</h3>
-<pre class="programlisting"><span class="returnvalue">int</span> g_test_run (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Runs all tests under the toplevel suite which can be retrieved
-with <a class="link" href="glib-Testing.html#g-test-get-root" title="g_test_get_root ()"><code class="function">g_test_get_root()</code></a>. Similar to <a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()"><code class="function">g_test_run_suite()</code></a>, the test
-cases to be run are filtered according to
-test path arguments (-p <em class="replaceable"><code>testpath</code></em>) as
-parsed by <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()"><code class="function">g_test_init()</code></a>.
-<a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()"><code class="function">g_test_run_suite()</code></a> or <a class="link" href="glib-Testing.html#g-test-run" title="g_test_run ()"><code class="function">g_test_run()</code></a> may only be called once
-in a program.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>0 on success</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GTestFunc"></a><h3>GTestFunc ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*GTestFunc) (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-The type used for test case functions.
-</p>
-<p class="since">Since 2.28</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-add-func"></a><h3>g_test_add_func ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_add_func (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFunc" title="GTestFunc ()"><span class="type">GTestFunc</span></a> test_func</code></em>);</pre>
-<p>
-Create a new test case, similar to <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a>. However
-the test is assumed to use no fixture, and test suites are automatically
-created on the fly and added to the root fixture, based on the
-slash-separated portions of <em class="parameter"><code>testpath</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>testpath</code></em> :</span></p></td>
-<td>/-separated test case path name for the test.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>test_func</code></em> :</span></p></td>
-<td>The test function to invoke for this test.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GTestDataFunc"></a><h3>GTestDataFunc ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*GTestDataFunc) (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> user_data</code></em>);</pre>
-<p>
-The type used for test case functions that take an extra pointer
-argument.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the data provided when registering the test</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.28</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-add-data-func"></a><h3>g_test_add_data_func ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_add_data_func (<em class="parameter"><code>const <span class="type">char</span> *testpath</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestDataFunc" title="GTestDataFunc ()"><span class="type">GTestDataFunc</span></a> test_func</code></em>);</pre>
-<p>
-Create a new test case, similar to <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a>. However
-the test is assumed to use no fixture, and test suites are automatically
-created on the fly and added to the root fixture, based on the
-slash-separated portions of <em class="parameter"><code>testpath</code></em>. The <em class="parameter"><code>test_data</code></em> argument
-will be passed as first argument to <em class="parameter"><code>test_func</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>testpath</code></em> :</span></p></td>
-<td>/-separated test case path name for the test.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>test_data</code></em> :</span></p></td>
-<td>Test data argument for the test function.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>test_func</code></em> :</span></p></td>
-<td>The test function to invoke for this test.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-add"></a><h3>g_test_add()</h3>
-<pre class="programlisting">#define g_test_add(testpath, Fixture, tdata, fsetup, ftest, fteardown)</pre>
-<p>
-Hook up a new test case at <em class="parameter"><code>testpath</code></em>, similar to <a class="link" href="glib-Testing.html#g-test-add-func" title="g_test_add_func ()"><code class="function">g_test_add_func()</code></a>.
-A fixture data structure with setup and teardown function may be provided
-though, similar to <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a>.
-<a class="link" href="glib-Testing.html#g-test-add" title="g_test_add()"><code class="function">g_test_add()</code></a> is implemented as a macro, so that the <code class="function">fsetup()</code>, <code class="function">ftest()</code> and
-<code class="function">fteardown()</code> callbacks can expect a <em class="parameter"><code>Fixture</code></em> pointer as first argument in
-a type safe manner.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>testpath</code></em> :</span></p></td>
-<td>The test path for a new test case.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>Fixture</code></em> :</span></p></td>
-<td>The type of a fixture data structure.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>tdata</code></em> :</span></p></td>
-<td>Data argument for the test functions.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>fsetup</code></em> :</span></p></td>
-<td>The function to set up the fixture data.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>ftest</code></em> :</span></p></td>
-<td>The actual test function.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>fteardown</code></em> :</span></p></td>
-<td>The function to tear down the fixture data.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-fail"></a><h3>g_test_fail ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_fail (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Indicates that a test failed. This function can be called
-multiple times from the same test. You can use this function
-if your test failed in a recoverable way.
-</p>
-<p>
-Do not use this function if the failure of a test could cause
-other tests to malfunction.
-</p>
-<p>
-Calling this function will not stop the test from running, you
-need to return from the test function yourself. So you can
-produce additional diagnostic messages or even continue running
-the test.
-</p>
-<p>
-If not called from inside a test, this function does nothing.
-</p>
-<p class="since">Since 2.30</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-message"></a><h3>g_test_message ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_message (<em class="parameter"><code>const <span class="type">char</span> *format</code></em>,
- <em class="parameter"><code>...</code></em>);</pre>
-<p>
-Add a message to the test report.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
-<td>the format string</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
-<td>printf-like arguments to <em class="parameter"><code>format</code></em>
-</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-bug-base"></a><h3>g_test_bug_base ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_bug_base (<em class="parameter"><code>const <span class="type">char</span> *uri_pattern</code></em>);</pre>
-<p>
-Specify the base URI for bug reports.
-</p>
-<p>
-The base URI is used to construct bug report messages for
-<a class="link" href="glib-Testing.html#g-test-message" title="g_test_message ()"><code class="function">g_test_message()</code></a> when <a class="link" href="glib-Testing.html#g-test-bug" title="g_test_bug ()"><code class="function">g_test_bug()</code></a> is called.
-Calling this function outside of a test case sets the
-default base URI for all test cases. Calling it from within
-a test case changes the base URI for the scope of the test
-case only.
-Bug URIs are constructed by appending a bug specific URI
-portion to <em class="parameter"><code>uri_pattern</code></em>, or by replacing the special string
-'%s' within <em class="parameter"><code>uri_pattern</code></em> if that is present.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>uri_pattern</code></em> :</span></p></td>
-<td>the base pattern for bug URIs</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-bug"></a><h3>g_test_bug ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_bug (<em class="parameter"><code>const <span class="type">char</span> *bug_uri_snippet</code></em>);</pre>
-<p>
-This function adds a message to test reports that
-associates a bug URI with a test case.
-Bug URIs are constructed from a base URI set with <a class="link" href="glib-Testing.html#g-test-bug-base" title="g_test_bug_base ()"><code class="function">g_test_bug_base()</code></a>
-and <em class="parameter"><code>bug_uri_snippet</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>bug_uri_snippet</code></em> :</span></p></td>
-<td>Bug specific bug tracker URI portion.</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GTestLogFatalFunc"></a><h3>GTestLogFatalFunc ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> (*GTestLogFatalFunc) (<em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *log_domain</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Message-Logging.html#GLogLevelFlags" title="enum GLogLevelFlags"><span class="type">GLogLevelFlags</span></a> log_level</code></em>,
- <em class="parameter"><code>const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *message</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
-<p>
-Specifies the prototype of fatal log handler functions.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>log_domain</code></em> :</span></p></td>
-<td>the log domain of the message</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>log_level</code></em> :</span></p></td>
-<td>the log level of the message (including the fatal and recursion flags)</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td>
-<td>the message to process</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data, set in <a class="link" href="glib-Testing.html#g-test-log-set-fatal-handler" title="g_test_log_set_fatal_handler ()"><code class="function">g_test_log_set_fatal_handler()</code></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the program should abort, <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> otherwise</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.22</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-log-set-fatal-handler"></a><h3>g_test_log_set_fatal_handler ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_log_set_fatal_handler (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestLogFatalFunc" title="GTestLogFatalFunc ()"><span class="type">GTestLogFatalFunc</span></a> log_func</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
-<p>
-Installs a non-error fatal log handler which can be
-used to decide whether log messages which are counted
-as fatal abort the program.
-</p>
-<p>
-The use case here is that you are running a test case
-that depends on particular libraries or circumstances
-and cannot prevent certain known critical or warning
-messages. So you install a handler that compares the
-domain and message to precisely not abort in such a case.
-</p>
-<p>
-Note that the handler is reset at the beginning of
-any test case, so you have to set it inside each test
-function which needs the special behavior.
-</p>
-<p>
-This handler has no effect on g_error messages.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>log_func</code></em> :</span></p></td>
-<td>the log handler function.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>data passed to the log handler.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.22</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-timer-start"></a><h3>g_test_timer_start ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_timer_start (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Start a timing test. Call <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()"><code class="function">g_test_timer_elapsed()</code></a> when the task is supposed
-to be done. Call this function again to restart the timer.
-</p>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-timer-elapsed"></a><h3>g_test_timer_elapsed ()</h3>
-<pre class="programlisting"><span class="returnvalue">double</span> g_test_timer_elapsed (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Get the time since the last start of the timer with <a class="link" href="glib-Testing.html#g-test-timer-start" title="g_test_timer_start ()"><code class="function">g_test_timer_start()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the time since the last start of the timer, as a double</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-timer-last"></a><h3>g_test_timer_last ()</h3>
-<pre class="programlisting"><span class="returnvalue">double</span> g_test_timer_last (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Report the last result of <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()"><code class="function">g_test_timer_elapsed()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the last result of <a class="link" href="glib-Testing.html#g-test-timer-elapsed" title="g_test_timer_elapsed ()"><code class="function">g_test_timer_elapsed()</code></a>, as a double</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-queue-free"></a><h3>g_test_queue_free ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_queue_free (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> gfree_pointer</code></em>);</pre>
-<p>
-Enqueue a pointer to be released with <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a> during the next
-teardown phase. This is equivalent to calling <a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()"><code class="function">g_test_queue_destroy()</code></a>
-with a destroy callback of <a class="link" href="glib-Memory-Allocation.html#g-free" title="g_free ()"><code class="function">g_free()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>gfree_pointer</code></em> :</span></p></td>
-<td>the pointer to be stored.</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-queue-destroy"></a><h3>g_test_queue_destroy ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_queue_destroy (<em class="parameter"><code><a class="link" href="glib-Datasets.html#GDestroyNotify" title="GDestroyNotify ()"><span class="type">GDestroyNotify</span></a> destroy_func</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> destroy_data</code></em>);</pre>
-<p>
-This function enqueus a callback <em class="parameter"><code>destroy_func</code></em> to be executed
-during the next test case teardown phase. This is most useful
-to auto destruct allocted test resources at the end of a test run.
-Resources are released in reverse queue order, that means enqueueing
-callback A before callback B will cause <code class="function">B()</code> to be called before
-<code class="function">A()</code> during teardown.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>destroy_func</code></em> :</span></p></td>
-<td>Destroy callback for teardown phase.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>destroy_data</code></em> :</span></p></td>
-<td>Destroy callback data.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-queue-unref"></a><h3>g_test_queue_unref()</h3>
-<pre class="programlisting">#define g_test_queue_unref(gobject)</pre>
-<p>
-Enqueue an object to be released with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a> during
-the next teardown phase. This is equivalent to calling
-<a class="link" href="glib-Testing.html#g-test-queue-destroy" title="g_test_queue_destroy ()"><code class="function">g_test_queue_destroy()</code></a> with a destroy callback of <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>gobject</code></em> :</span></p></td>
-<td>the object to unref</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GTestTrapFlags"></a><h3>enum GTestTrapFlags</h3>
-<pre class="programlisting">typedef enum {
- G_TEST_TRAP_SILENCE_STDOUT = 1 &lt;&lt; 7,
- G_TEST_TRAP_SILENCE_STDERR = 1 &lt;&lt; 8,
- G_TEST_TRAP_INHERIT_STDIN = 1 &lt;&lt; 9
-} GTestTrapFlags;
-</pre>
-<p>
-Test traps are guards around forked tests.
-These flags determine what traps to set.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><a name="G-TEST-TRAP-SILENCE-STDOUT:CAPS"></a><span class="term"><code class="literal">G_TEST_TRAP_SILENCE_STDOUT</code></span></p></td>
-<td>Redirect stdout of the test child to
- <code class="filename">/dev/null</code> so it cannot be observed on the
- console during test runs. The actual output is still captured
- though to allow later tests with <a class="link" href="glib-Testing.html#g-test-trap-assert-stdout" title="g_test_trap_assert_stdout()"><code class="function">g_test_trap_assert_stdout()</code></a>.
-</td>
-</tr>
-<tr>
-<td><p><a name="G-TEST-TRAP-SILENCE-STDERR:CAPS"></a><span class="term"><code class="literal">G_TEST_TRAP_SILENCE_STDERR</code></span></p></td>
-<td>Redirect stderr of the test child to
- <code class="filename">/dev/null</code> so it cannot be observed on the
- console during test runs. The actual output is still captured
- though to allow later tests with <a class="link" href="glib-Testing.html#g-test-trap-assert-stderr" title="g_test_trap_assert_stderr()"><code class="function">g_test_trap_assert_stderr()</code></a>.
-</td>
-</tr>
-<tr>
-<td><p><a name="G-TEST-TRAP-INHERIT-STDIN:CAPS"></a><span class="term"><code class="literal">G_TEST_TRAP_INHERIT_STDIN</code></span></p></td>
-<td>If this flag is given, stdin of the
- forked child process is shared with stdin of its parent process.
- It is redirected to <code class="filename">/dev/null</code> otherwise.
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-fork"></a><h3>g_test_trap_fork ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_test_trap_fork (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#guint64" title="guint64"><span class="type">guint64</span></a> usec_timeout</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags"><span class="type">GTestTrapFlags</span></a> test_trap_flags</code></em>);</pre>
-<p>
-Fork the current test program to execute a test case that might
-not return or that might abort. The forked test case is aborted
-and considered failing if its run time exceeds <em class="parameter"><code>usec_timeout</code></em>.
-</p>
-<p>
-The forking behavior can be configured with the <a class="link" href="glib-Testing.html#GTestTrapFlags" title="enum GTestTrapFlags"><span class="type">GTestTrapFlags</span></a> flags.
-</p>
-<p>
-In the following example, the test code forks, the forked child
-process produces some sample output and exits successfully.
-The forking parent process then asserts successful child program
-termination and validates child program outputs.
-</p>
-<p>
-</p>
-<div class="informalexample"><pre class="programlisting">
- static void
- test_fork_patterns (void)
- {
- if (g_test_trap_fork (0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR))
- {
- g_print ("some stdout text: somagic17\n");
- g_printerr ("some stderr text: semagic43\n");
- exit (0); /* successful test run */
- }
- g_test_trap_assert_passed();
- g_test_trap_assert_stdout ("*somagic17*");
- g_test_trap_assert_stderr ("*semagic43*");
- }
-</pre></div>
-<p>
-</p>
-<p>
-This function is implemented only on Unix platforms.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>usec_timeout</code></em> :</span></p></td>
-<td>Timeout for the forked test in micro seconds.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>test_trap_flags</code></em> :</span></p></td>
-<td>Flags to modify forking behaviour.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> for the forked child and <a class="link" href="glib-Standard-Macros.html#FALSE:CAPS" title="FALSE"><code class="literal">FALSE</code></a> for the executing parent process.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-has-passed"></a><h3>g_test_trap_has_passed ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_test_trap_has_passed (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Check the result of the last <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a> call.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the last forked child terminated successfully.</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-reached-timeout"></a><h3>g_test_trap_reached_timeout ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> g_test_trap_reached_timeout (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Check the result of the last <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a> call.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the last forked child got killed due to a fork timeout.</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-assert-passed"></a><h3>g_test_trap_assert_passed</h3>
-<pre class="programlisting">#define g_test_trap_assert_passed()</pre>
-<p>
-Assert that the last forked test passed.
-See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
-</p>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-assert-failed"></a><h3>g_test_trap_assert_failed</h3>
-<pre class="programlisting">#define g_test_trap_assert_failed()</pre>
-<p>
-Assert that the last forked test failed.
-See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
-</p>
-<p>
-This is sometimes used to test situations that are formally considered to
-be undefined behaviour, like inputs that fail a <a class="link" href="glib-Warnings-and-Assertions.html#g-return-if-fail" title="g_return_if_fail()"><code class="function">g_return_if_fail()</code></a>
-check. In these situations you should skip the entire test, including the
-call to <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>, unless <a class="link" href="glib-Testing.html#g-test-undefined" title="g_test_undefined"><code class="function">g_test_undefined()</code></a> returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a>
-to indicate that undefined behaviour may be tested.
-</p>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-assert-stdout"></a><h3>g_test_trap_assert_stdout()</h3>
-<pre class="programlisting">#define g_test_trap_assert_stdout(soutpattern)</pre>
-<p>
-Assert that the stdout output of the last forked test matches
-<em class="parameter"><code>soutpattern</code></em>. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>soutpattern</code></em> :</span></p></td>
-<td>a glob-style
-<a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
-</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-assert-stdout-unmatched"></a><h3>g_test_trap_assert_stdout_unmatched()</h3>
-<pre class="programlisting">#define g_test_trap_assert_stdout_unmatched(soutpattern)</pre>
-<p>
-Assert that the stdout output of the last forked test
-does not match <em class="parameter"><code>soutpattern</code></em>. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>soutpattern</code></em> :</span></p></td>
-<td>a glob-style
-<a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
-</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-assert-stderr"></a><h3>g_test_trap_assert_stderr()</h3>
-<pre class="programlisting">#define g_test_trap_assert_stderr(serrpattern)</pre>
-<p>
-Assert that the stderr output of the last forked test
-matches <em class="parameter"><code>serrpattern</code></em>. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
-</p>
-<p>
-This is sometimes used to test situations that are formally considered to
-be undefined behaviour, like inputs that fail a <a class="link" href="glib-Warnings-and-Assertions.html#g-return-if-fail" title="g_return_if_fail()"><code class="function">g_return_if_fail()</code></a>
-check. In these situations you should skip the entire test, including the
-call to <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>, unless <a class="link" href="glib-Testing.html#g-test-undefined" title="g_test_undefined"><code class="function">g_test_undefined()</code></a> returns <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a>
-to indicate that undefined behaviour may be tested.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>serrpattern</code></em> :</span></p></td>
-<td>a glob-style
-<a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
-</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-trap-assert-stderr-unmatched"></a><h3>g_test_trap_assert_stderr_unmatched()</h3>
-<pre class="programlisting">#define g_test_trap_assert_stderr_unmatched(serrpattern)</pre>
-<p>
-Assert that the stderr output of the last forked test
-does not match <em class="parameter"><code>serrpattern</code></em>. See <a class="link" href="glib-Testing.html#g-test-trap-fork" title="g_test_trap_fork ()"><code class="function">g_test_trap_fork()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>serrpattern</code></em> :</span></p></td>
-<td>a glob-style
-<a class="link" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">pattern</a>
-</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-rand-bit"></a><h3>g_test_rand_bit</h3>
-<pre class="programlisting">#define g_test_rand_bit()</pre>
-<p>
-Get a reproducible random bit (0 or 1), see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a>
-for details on test case random numbers.
-</p>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-rand-int"></a><h3>g_test_rand_int ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> g_test_rand_int (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Get a reproducible random integer number.
-</p>
-<p>
-The random numbers generated by the g_test_rand_*() family of functions
-change with every new test program start, unless the --seed option is
-given when starting test programs.
-</p>
-<p>
-For individual test cases however, the random number generator is
-reseeded, to avoid dependencies between tests and to make --seed
-effective for all test cases.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a random number from the seeded random number generator.</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-rand-int-range"></a><h3>g_test_rand_int_range ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="returnvalue">gint32</span></a> g_test_rand_int_range (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> begin</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gint32" title="gint32"><span class="type">gint32</span></a> end</code></em>);</pre>
-<p>
-Get a reproducible random integer number out of a specified range,
-see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a> for details on test case random numbers.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>begin</code></em> :</span></p></td>
-<td>the minimum value returned by this function</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
-<td>the smallest value not to be returned by this function</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a number with <em class="parameter"><code>begin</code></em> &lt;= number &lt; <em class="parameter"><code>end</code></em>.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-rand-double"></a><h3>g_test_rand_double ()</h3>
-<pre class="programlisting"><span class="returnvalue">double</span> g_test_rand_double (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Get a reproducible random floating point number,
-see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a> for details on test case random numbers.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a random number from the seeded random number generator.</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-rand-double-range"></a><h3>g_test_rand_double_range ()</h3>
-<pre class="programlisting"><span class="returnvalue">double</span> g_test_rand_double_range (<em class="parameter"><code><span class="type">double</span> range_start</code></em>,
- <em class="parameter"><code><span class="type">double</span> range_end</code></em>);</pre>
-<p>
-Get a reproducible random floating pointer number out of a specified range,
-see <a class="link" href="glib-Testing.html#g-test-rand-int" title="g_test_rand_int ()"><code class="function">g_test_rand_int()</code></a> for details on test case random numbers.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>range_start</code></em> :</span></p></td>
-<td>the minimum value returned by this function</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>range_end</code></em> :</span></p></td>
-<td>the minimum value not returned by this function</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a number with <em class="parameter"><code>range_start</code></em> &lt;= number &lt; <em class="parameter"><code>range_end</code></em>.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert"></a><h3>g_assert()</h3>
-<pre class="programlisting">#define g_assert(expr)</pre>
-<p>
-Debugging macro to terminate the application if the assertion
-fails. If the assertion fails (i.e. the expression is not true),
-an error message is logged and the application is terminated.
-</p>
-<p>
-The macro can be turned off in final releases of code by defining
-<code class="envar">G_DISABLE_ASSERT</code> when compiling the application.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>expr</code></em> :</span></p></td>
-<td>the expression to check</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-not-reached"></a><h3>g_assert_not_reached</h3>
-<pre class="programlisting">#define g_assert_not_reached()</pre>
-<p>
-Debugging macro to terminate the application if it is ever
-reached. If it is reached, an error message is logged and the
-application is terminated.
-</p>
-<p>
-The macro can be turned off in final releases of code by defining
-<code class="envar">G_DISABLE_ASSERT</code> when compiling the application.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-cmpstr"></a><h3>g_assert_cmpstr()</h3>
-<pre class="programlisting">#define g_assert_cmpstr(s1, cmp, s2)</pre>
-<p>
-Debugging macro to terminate the application with a warning
-message if a string comparison fails. The strings are compared
-using <a class="link" href="glib-String-Utility-Functions.html#g-strcmp0" title="g_strcmp0 ()"><code class="function">g_strcmp0()</code></a>.
-</p>
-<p>
-The effect of <code class="literal">g_assert_cmpstr (s1, op, s2)</code> is
-the same as <code class="literal">g_assert (g_strcmp0 (s1, s2) op 0)</code>.
-The advantage of this macro is that it can produce a message that
-includes the actual values of <em class="parameter"><code>s1</code></em> and <em class="parameter"><code>s2</code></em>.
-</p>
-<p>
-</p>
-<div class="informalexample"><pre class="programlisting">
- g_assert_cmpstr (mystring, ==, "fubar");
-</pre></div>
-<p>
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>s1</code></em> :</span></p></td>
-<td>a string (may be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>)</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
-<td>The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>s2</code></em> :</span></p></td>
-<td>another string (may be <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>)</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-cmpint"></a><h3>g_assert_cmpint()</h3>
-<pre class="programlisting">#define g_assert_cmpint(n1, cmp, n2)</pre>
-<p>
-Debugging macro to terminate the application with a warning
-message if an integer comparison fails.
-</p>
-<p>
-The effect of <code class="literal">g_assert_cmpint (n1, op, n2)</code> is
-the same as <code class="literal">g_assert (n1 op n2)</code>. The advantage
-of this macro is that it can produce a message that includes the
-actual values of <em class="parameter"><code>n1</code></em> and <em class="parameter"><code>n2</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
-<td>an integer</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
-<td>The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
-<td>another integer</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-cmpuint"></a><h3>g_assert_cmpuint()</h3>
-<pre class="programlisting">#define g_assert_cmpuint(n1, cmp, n2)</pre>
-<p>
-Debugging macro to terminate the application with a warning
-message if an unsigned integer comparison fails.
-</p>
-<p>
-The effect of <code class="literal">g_assert_cmpuint (n1, op, n2)</code> is
-the same as <code class="literal">g_assert (n1 op n2)</code>. The advantage
-of this macro is that it can produce a message that includes the
-actual values of <em class="parameter"><code>n1</code></em> and <em class="parameter"><code>n2</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
-<td>an unsigned integer</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
-<td>The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
-<td>another unsigned integer</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-cmphex"></a><h3>g_assert_cmphex()</h3>
-<pre class="programlisting">#define g_assert_cmphex(n1, cmp, n2)</pre>
-<p>
-Debugging macro to terminate the application with a warning
-message if an unsigned integer comparison fails.
-</p>
-<p>
-This is a variant of <a class="link" href="glib-Testing.html#g-assert-cmpuint" title="g_assert_cmpuint()"><code class="function">g_assert_cmpuint()</code></a> that displays the numbers
-in hexadecimal notation in the message.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
-<td>an unsigned integer</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
-<td>The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
-<td>another unsigned integer</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-cmpfloat"></a><h3>g_assert_cmpfloat()</h3>
-<pre class="programlisting">#define g_assert_cmpfloat(n1,cmp,n2)</pre>
-<p>
-Debugging macro to terminate the application with a warning
-message if a floating point number comparison fails.
-</p>
-<p>
-The effect of <code class="literal">g_assert_cmpfloat (n1, op, n2)</code> is
-the same as <code class="literal">g_assert (n1 op n2)</code>. The advantage
-of this macro is that it can produce a message that includes the
-actual values of <em class="parameter"><code>n1</code></em> and <em class="parameter"><code>n2</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n1</code></em> :</span></p></td>
-<td>an floating point number</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cmp</code></em> :</span></p></td>
-<td>The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>n2</code></em> :</span></p></td>
-<td>another floating point number</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-no-error"></a><h3>g_assert_no_error()</h3>
-<pre class="programlisting">#define g_assert_no_error(err)</pre>
-<p>
-Debugging macro to terminate the application with a warning
-message if a method has returned a <a class="link" href="glib-Error-Reporting.html#GError" title="struct GError"><span class="type">GError</span></a>.
-</p>
-<p>
-The effect of <code class="literal">g_assert_no_error (err)</code> is
-the same as <code class="literal">g_assert (err == NULL)</code>. The advantage
-of this macro is that it can produce a message that includes
-the error message and code.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>err</code></em> :</span></p></td>
-<td>a <a class="link" href="glib-Error-Reporting.html#GError" title="struct GError"><span class="type">GError</span></a>, possibly <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
-</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.20</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-assert-error"></a><h3>g_assert_error()</h3>
-<pre class="programlisting">#define g_assert_error(err, dom, c)</pre>
-<p>
-Debugging macro to terminate the application with a warning
-message if a method has not returned the correct <a class="link" href="glib-Error-Reporting.html#GError" title="struct GError"><span class="type">GError</span></a>.
-</p>
-<p>
-The effect of <code class="literal">g_assert_error (err, dom, c)</code> is
-the same as <code class="literal">g_assert (err != NULL &amp;&amp; err-&gt;domain
-== dom &amp;&amp; err-&gt;code == c)</code>. The advantage of this
-macro is that it can produce a message that includes the incorrect
-error message and code.
-</p>
-<p>
-This can only be used to test for a specific error. If you want to
-test that <em class="parameter"><code>err</code></em> is set, but don't care what it's set to, just use
-<code class="literal">g_assert (err != NULL)</code>
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>err</code></em> :</span></p></td>
-<td>a <a class="link" href="glib-Error-Reporting.html#GError" title="struct GError"><span class="type">GError</span></a>, possibly <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>dom</code></em> :</span></p></td>
-<td>the expected error domain (a <a class="link" href="glib-Quarks.html#GQuark" title="GQuark"><span class="type">GQuark</span></a>)</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
-<td>the expected error code</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.20</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GTestCase"></a><h3>GTestCase</h3>
-<pre class="programlisting">typedef struct GTestCase GTestCase;
-</pre>
-<p>
-An opaque structure representing a test case.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GTestSuite"></a><h3>GTestSuite</h3>
-<pre class="programlisting">typedef struct GTestSuite GTestSuite;
-</pre>
-<p>
-An opaque structure representing a test suite.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="GTestFixtureFunc"></a><h3>GTestFixtureFunc ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*GTestFixtureFunc) (<em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gpointer" title="gpointer"><span class="type">gpointer</span></a> fixture</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> user_data</code></em>);</pre>
-<p>
-The type used for functions that operate on test fixtures. This is
-used for the fixture setup and teardown functions as well as for the
-testcases themselves.
-</p>
-<p>
-<em class="parameter"><code>user_data</code></em> is a pointer to the data that was given when registering
-the test case.
-</p>
-<p>
-<em class="parameter"><code>fixture</code></em> will be a pointer to the area of memory allocated by the
-test framework, of the size requested. If the requested size was
-zero then <em class="parameter"><code>fixture</code></em> will be equal to <em class="parameter"><code>user_data</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>fixture</code></em> :</span></p></td>
-<td>the test fixture</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the data provided when registering the test</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.28</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-create-case"></a><h3>g_test_create_case ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="returnvalue">GTestCase</span></a> * g_test_create_case (<em class="parameter"><code>const <span class="type">char</span> *test_name</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> data_size</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Basic-Types.html#gconstpointer" title="gconstpointer"><span class="type">gconstpointer</span></a> test_data</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFixtureFunc" title="GTestFixtureFunc ()"><span class="type">GTestFixtureFunc</span></a> data_setup</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFixtureFunc" title="GTestFixtureFunc ()"><span class="type">GTestFixtureFunc</span></a> data_test</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestFixtureFunc" title="GTestFixtureFunc ()"><span class="type">GTestFixtureFunc</span></a> data_teardown</code></em>);</pre>
-<p>
-Create a new <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a>, named <em class="parameter"><code>test_name</code></em>, this API is fairly
-low level, calling <a class="link" href="glib-Testing.html#g-test-add" title="g_test_add()"><code class="function">g_test_add()</code></a> or <a class="link" href="glib-Testing.html#g-test-add-func" title="g_test_add_func ()"><code class="function">g_test_add_func()</code></a> is preferable.
-When this test is executed, a fixture structure of size <em class="parameter"><code>data_size</code></em>
-will be allocated and filled with 0s. Then <em class="parameter"><code>data_setup</code></em> is called
-to initialize the fixture. After fixture setup, the actual test
-function <em class="parameter"><code>data_test</code></em> is called. Once the test run completed, the
-fixture structure is torn down by calling <em class="parameter"><code>data_teardown</code></em> and
-after that the memory is released.
-</p>
-<p>
-Splitting up a test run into fixture setup, test function and
-fixture teardown is most usful if the same fixture is used for
-multiple tests. In this cases, <a class="link" href="glib-Testing.html#g-test-create-case" title="g_test_create_case ()"><code class="function">g_test_create_case()</code></a> will be
-called with the same fixture, but varying <em class="parameter"><code>test_name</code></em> and
-<em class="parameter"><code>data_test</code></em> arguments.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>test_name</code></em> :</span></p></td>
-<td>the name for the test case</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>data_size</code></em> :</span></p></td>
-<td>the size of the fixture data structure</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>test_data</code></em> :</span></p></td>
-<td>test data argument for the test functions</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>data_setup</code></em> :</span></p></td>
-<td>the function to set up the fixture data</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>data_test</code></em> :</span></p></td>
-<td>the actual test function</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>data_teardown</code></em> :</span></p></td>
-<td>the function to teardown the fixture data</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a newly allocated <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a>.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-create-suite"></a><h3>g_test_create_suite ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a> * g_test_create_suite (<em class="parameter"><code>const <span class="type">char</span> *suite_name</code></em>);</pre>
-<p>
-Create a new test suite with the name <em class="parameter"><code>suite_name</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>suite_name</code></em> :</span></p></td>
-<td>a name for the suite</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>A newly allocated <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> instance.</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-get-root"></a><h3>g_test_get_root ()</h3>
-<pre class="programlisting"><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="returnvalue">GTestSuite</span></a> * g_test_get_root (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
-<p>
-Get the toplevel test suite for the test path API.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the toplevel <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
-</td>
-</tr></tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-suite-add"></a><h3>g_test_suite_add ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_suite_add (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a> *test_case</code></em>);</pre>
-<p>
-Adds <em class="parameter"><code>test_case</code></em> to <em class="parameter"><code>suite</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>suite</code></em> :</span></p></td>
-<td>a <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>test_case</code></em> :</span></p></td>
-<td>a <a class="link" href="glib-Testing.html#GTestCase" title="GTestCase"><span class="type">GTestCase</span></a>
-</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-suite-add-suite"></a><h3>g_test_suite_add_suite ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> g_test_suite_add_suite (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>,
- <em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *nestedsuite</code></em>);</pre>
-<p>
-Adds <em class="parameter"><code>nestedsuite</code></em> to <em class="parameter"><code>suite</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>suite</code></em> :</span></p></td>
-<td>a <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>nestedsuite</code></em> :</span></p></td>
-<td>another <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
-</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="g-test-run-suite"></a><h3>g_test_run_suite ()</h3>
-<pre class="programlisting"><span class="returnvalue">int</span> g_test_run_suite (<em class="parameter"><code><a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a> *suite</code></em>);</pre>
-<p>
-Execute the tests within <em class="parameter"><code>suite</code></em> and all nested <a href="glib-Testing.html#GTestSuite"><span class="type">GTestSuites</span></a>.
-The test suites to be executed are filtered according to
-test path arguments (-p <em class="replaceable"><code>testpath</code></em>)
-as parsed by <a class="link" href="glib-Testing.html#g-test-init" title="g_test_init ()"><code class="function">g_test_init()</code></a>.
-<a class="link" href="glib-Testing.html#g-test-run-suite" title="g_test_run_suite ()"><code class="function">g_test_run_suite()</code></a> or <a class="link" href="glib-Testing.html#g-test-run" title="g_test_run ()"><code class="function">g_test_run()</code></a> may only be called once
-in a program.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>suite</code></em> :</span></p></td>
-<td>a <a class="link" href="glib-Testing.html#GTestSuite" title="GTestSuite"><span class="type">GTestSuite</span></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>0 on success</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since 2.16</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="glib-Testing.see-also"></a><h2>See Also</h2>
-<a href="gtester.html">gtester</a>,
- <a href="gtester-report.html">gtester-report</a>
-</div>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.18</div>
-</body>
-</html> \ No newline at end of file