mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-24 22:46:15 +01: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:
parent
bd8658e16a
commit
662cddcb4b
@ -136,6 +136,10 @@
|
||||
<chapter id="tools">
|
||||
<title>GLib Tools</title>
|
||||
<xi:include href="glib-gettextize.xml" />
|
||||
</chapter>
|
||||
|
||||
<chapter id="deprecated-tools">
|
||||
<title>Deprecated Tools</title>
|
||||
<xi:include href="gtester.xml" />
|
||||
<xi:include href="gtester-report.xml" />
|
||||
</chapter>
|
||||
|
@ -35,6 +35,9 @@
|
||||
<para><command>gtester-report</command> is a script which converts
|
||||
the XML output generated by gtester into HTML.
|
||||
</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><title>Options</title>
|
||||
|
@ -40,6 +40,9 @@
|
||||
<para><command>gtester</command> is a utility to run unit tests that have
|
||||
been written using the GLib test framework.
|
||||
</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>
|
||||
When called with the <option>-o</option> option, <command>gtester</command>
|
||||
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
|
||||
# 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 optparse
|
||||
import sys, re, xml.dom.minidom
|
||||
@ -343,6 +347,9 @@ class HTMLReportWriter(ReportWriter):
|
||||
self.oprint ('<body>\n')
|
||||
self.oprint ('<h2>GTester Unit Test Report</h2>\n')
|
||||
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 ('<th>Program / Testcase </th>\n')
|
||||
self.oprint ('<th style="width:8em">Duration (sec)</th>\n')
|
||||
@ -474,6 +481,10 @@ def main():
|
||||
options, files = parse_opts()
|
||||
if options is None:
|
||||
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])
|
||||
rr = ReportReader()
|
||||
rr.trampoline (xd)
|
||||
|
@ -43,6 +43,7 @@ static gboolean gtester_quiet = FALSE;
|
||||
static gboolean gtester_verbose = FALSE;
|
||||
static gboolean gtester_list_tests = FALSE;
|
||||
static gboolean gtester_selftest = FALSE;
|
||||
static gboolean gtester_ignore_deprecation = FALSE;
|
||||
static gboolean subtest_running = FALSE;
|
||||
static gint subtest_exitstatus = 0;
|
||||
static gboolean subtest_io_pending = FALSE;
|
||||
@ -660,6 +661,11 @@ parse_args (gint *argc_p,
|
||||
}
|
||||
argv[i] = NULL;
|
||||
}
|
||||
else if (strcmp ("--i-know-this-is-deprecated", argv[i]) == 0)
|
||||
{
|
||||
gtester_ignore_deprecation = TRUE;
|
||||
argv[i] = NULL;
|
||||
}
|
||||
}
|
||||
/* collapse argv */
|
||||
e = 1;
|
||||
@ -690,6 +696,10 @@ main (int argc,
|
||||
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)
|
||||
{
|
||||
int errsv;
|
||||
@ -700,6 +710,8 @@ main (int argc,
|
||||
}
|
||||
|
||||
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));
|
||||
log_indent += 2;
|
||||
for (ui = 1; ui < argc; ui++)
|
||||
|
@ -60,7 +60,6 @@
|
||||
* SECTION:testing
|
||||
* @title: Testing
|
||||
* @short_description: a test framework
|
||||
* @see_also: [gtester][gtester], [gtester-report][gtester-report]
|
||||
*
|
||||
* GLib provides a framework for writing and maintaining unit tests
|
||||
* 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
|
||||
* [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)
|
||||
* 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()
|
||||
tmpsample_xml = custom_target('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('gtester-xmllint-check', xmllint,
|
||||
|
Loading…
Reference in New Issue
Block a user