mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-22 00:48:53 +02:00
glib: Deprecate gtester and gtester-report
Add warnings about their deprecation everywhere. The tools will continue to work until we break API, but will be less well maintained. You should use TAP for communicating test results to the test harness provided by your build system or CI system instead. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1441
This commit is contained in:
@@ -136,6 +136,10 @@
|
|||||||
<chapter id="tools">
|
<chapter id="tools">
|
||||||
<title>GLib Tools</title>
|
<title>GLib Tools</title>
|
||||||
<xi:include href="glib-gettextize.xml" />
|
<xi:include href="glib-gettextize.xml" />
|
||||||
|
</chapter>
|
||||||
|
|
||||||
|
<chapter id="deprecated-tools">
|
||||||
|
<title>Deprecated Tools</title>
|
||||||
<xi:include href="gtester.xml" />
|
<xi:include href="gtester.xml" />
|
||||||
<xi:include href="gtester-report.xml" />
|
<xi:include href="gtester-report.xml" />
|
||||||
</chapter>
|
</chapter>
|
||||||
|
@@ -35,6 +35,9 @@
|
|||||||
<para><command>gtester-report</command> is a script which converts
|
<para><command>gtester-report</command> is a script which converts
|
||||||
the XML output generated by gtester into HTML.
|
the XML output generated by gtester into HTML.
|
||||||
</para>
|
</para>
|
||||||
|
<para>Since GLib 2.62, <command>gtester-report</command> is deprecated. Use
|
||||||
|
TAP for reporting test results instead, and feed it to the test harness provided
|
||||||
|
by your build system.</para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
||||||
<refsect1><title>Options</title>
|
<refsect1><title>Options</title>
|
||||||
|
@@ -40,6 +40,9 @@
|
|||||||
<para><command>gtester</command> is a utility to run unit tests that have
|
<para><command>gtester</command> is a utility to run unit tests that have
|
||||||
been written using the GLib test framework.
|
been written using the GLib test framework.
|
||||||
</para>
|
</para>
|
||||||
|
<para>Since GLib 2.62, <command>gtester-report</command> is deprecated. Use
|
||||||
|
TAP for reporting test results instead, and feed it to the test harness provided
|
||||||
|
by your build system.</para>
|
||||||
<para>
|
<para>
|
||||||
When called with the <option>-o</option> option, <command>gtester</command>
|
When called with the <option>-o</option> option, <command>gtester</command>
|
||||||
writes an XML report of the test results, which can be converted
|
writes an XML report of the test results, which can be converted
|
||||||
|
@@ -15,6 +15,10 @@
|
|||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Lesser General Public
|
# You should have received a copy of the GNU Lesser General Public
|
||||||
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
# Deprecated: Since GLib 2.62, gtester and gtester-report have been deprecated
|
||||||
|
# in favour of TAP.
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
import optparse
|
import optparse
|
||||||
import sys, re, xml.dom.minidom
|
import sys, re, xml.dom.minidom
|
||||||
@@ -343,6 +347,9 @@ class HTMLReportWriter(ReportWriter):
|
|||||||
self.oprint ('<body>\n')
|
self.oprint ('<body>\n')
|
||||||
self.oprint ('<h2>GTester Unit Test Report</h2>\n')
|
self.oprint ('<h2>GTester Unit Test Report</h2>\n')
|
||||||
self.handle_info ()
|
self.handle_info ()
|
||||||
|
self.oprint ('<p style="color:red;font-weight:bold"><blink>'
|
||||||
|
'Deprecated: Since GLib 2.62, gtester and gtester-report are '
|
||||||
|
'deprecated. Port to TAP.</blink></p>\n');
|
||||||
self.oprint ('<table id="ResultTable" width="100%" border="1">\n<tr>\n')
|
self.oprint ('<table id="ResultTable" width="100%" border="1">\n<tr>\n')
|
||||||
self.oprint ('<th>Program / Testcase </th>\n')
|
self.oprint ('<th>Program / Testcase </th>\n')
|
||||||
self.oprint ('<th style="width:8em">Duration (sec)</th>\n')
|
self.oprint ('<th style="width:8em">Duration (sec)</th>\n')
|
||||||
@@ -474,6 +481,10 @@ def main():
|
|||||||
options, files = parse_opts()
|
options, files = parse_opts()
|
||||||
if options is None:
|
if options is None:
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
print("Deprecated: Since GLib 2.62, gtester and gtester-report are "
|
||||||
|
"deprecated. Port to TAP.", file=sys.stderr)
|
||||||
|
|
||||||
xd = xml.dom.minidom.parse (files[0])
|
xd = xml.dom.minidom.parse (files[0])
|
||||||
rr = ReportReader()
|
rr = ReportReader()
|
||||||
rr.trampoline (xd)
|
rr.trampoline (xd)
|
||||||
|
@@ -43,6 +43,7 @@ static gboolean gtester_quiet = FALSE;
|
|||||||
static gboolean gtester_verbose = FALSE;
|
static gboolean gtester_verbose = FALSE;
|
||||||
static gboolean gtester_list_tests = FALSE;
|
static gboolean gtester_list_tests = FALSE;
|
||||||
static gboolean gtester_selftest = FALSE;
|
static gboolean gtester_selftest = FALSE;
|
||||||
|
static gboolean gtester_ignore_deprecation = FALSE;
|
||||||
static gboolean subtest_running = FALSE;
|
static gboolean subtest_running = FALSE;
|
||||||
static gint subtest_exitstatus = 0;
|
static gint subtest_exitstatus = 0;
|
||||||
static gboolean subtest_io_pending = FALSE;
|
static gboolean subtest_io_pending = FALSE;
|
||||||
@@ -660,6 +661,11 @@ parse_args (gint *argc_p,
|
|||||||
}
|
}
|
||||||
argv[i] = NULL;
|
argv[i] = NULL;
|
||||||
}
|
}
|
||||||
|
else if (strcmp ("--i-know-this-is-deprecated", argv[i]) == 0)
|
||||||
|
{
|
||||||
|
gtester_ignore_deprecation = TRUE;
|
||||||
|
argv[i] = NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/* collapse argv */
|
/* collapse argv */
|
||||||
e = 1;
|
e = 1;
|
||||||
@@ -690,6 +696,10 @@ main (int argc,
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!gtester_ignore_deprecation)
|
||||||
|
g_warning ("Deprecated: Since GLib 2.62, gtester and gtester-report are "
|
||||||
|
"deprecated. Port to TAP.");
|
||||||
|
|
||||||
if (output_filename)
|
if (output_filename)
|
||||||
{
|
{
|
||||||
int errsv;
|
int errsv;
|
||||||
@@ -700,6 +710,8 @@ main (int argc,
|
|||||||
}
|
}
|
||||||
|
|
||||||
test_log_printfe ("<?xml version=\"1.0\"?>\n");
|
test_log_printfe ("<?xml version=\"1.0\"?>\n");
|
||||||
|
test_log_printfe ("<!-- Deprecated: Since GLib 2.62, gtester and "
|
||||||
|
"gtester-report are deprecated. Port to TAP. -->\n");
|
||||||
test_log_printfe ("%s<gtester>\n", sindent (log_indent));
|
test_log_printfe ("%s<gtester>\n", sindent (log_indent));
|
||||||
log_indent += 2;
|
log_indent += 2;
|
||||||
for (ui = 1; ui < argc; ui++)
|
for (ui = 1; ui < argc; ui++)
|
||||||
|
@@ -60,7 +60,6 @@
|
|||||||
* SECTION:testing
|
* SECTION:testing
|
||||||
* @title: Testing
|
* @title: Testing
|
||||||
* @short_description: a test framework
|
* @short_description: a test framework
|
||||||
* @see_also: [gtester][gtester], [gtester-report][gtester-report]
|
|
||||||
*
|
*
|
||||||
* GLib provides a framework for writing and maintaining unit tests
|
* GLib provides a framework for writing and maintaining unit tests
|
||||||
* in parallel to the code they are testing. The API is designed according
|
* in parallel to the code they are testing. The API is designed according
|
||||||
@@ -235,7 +234,9 @@
|
|||||||
* If you don't have access to the Autotools TAP harness, you can use the
|
* If you don't have access to the Autotools TAP harness, you can use the
|
||||||
* [gtester][gtester] and [gtester-report][gtester-report] tools, and use
|
* [gtester][gtester] and [gtester-report][gtester-report] tools, and use
|
||||||
* the [glib.mk](https://gitlab.gnome.org/GNOME/glib/blob/glib-2-58/glib.mk)
|
* the [glib.mk](https://gitlab.gnome.org/GNOME/glib/blob/glib-2-58/glib.mk)
|
||||||
* Automake template provided by GLib.
|
* Automake template provided by GLib. Note, however, that since GLib 2.62,
|
||||||
|
* [gtester][gtester] and [gtester-report][gtester-report] have been deprecated
|
||||||
|
* in favour of using TAP.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -229,7 +229,7 @@ if not meson.is_cross_build() and host_system != 'windows'
|
|||||||
if xmllint.found()
|
if xmllint.found()
|
||||||
tmpsample_xml = custom_target('tmpsample.xml',
|
tmpsample_xml = custom_target('tmpsample.xml',
|
||||||
output : 'tmpsample.xml',
|
output : 'tmpsample.xml',
|
||||||
command : [ gtester, '-k', '--quiet', '-o', '@OUTPUT@',
|
command : [ gtester, '-k', '--quiet', '--i-know-this-is-deprecated', '-o', '@OUTPUT@',
|
||||||
'--test-arg=--gtester-selftest', gtester])
|
'--test-arg=--gtester-selftest', gtester])
|
||||||
|
|
||||||
test('gtester-xmllint-check', xmllint,
|
test('gtester-xmllint-check', xmllint,
|
||||||
|
Reference in New Issue
Block a user