Commit Graph

5173 Commits

Author SHA1 Message Date
Tim Janik
d3c69f19a2 gtestframework.c: added test API documentation by Sven Herzberg and Tim Janik.
svn path=/trunk/; revision=5908
2007-11-20 15:00:59 +00:00
Tim Janik
f3d2520702 gtestframework.[hc]: implemented g_test_queue_destroy() and g_test_queue_unref().
svn path=/trunk/; revision=5907
2007-11-20 15:00:57 +00:00
Tim Janik
515c53474a Added g_test_bug() and related API.
* gtester.c: handle G_TEST_LOG_MESSAGE and test test message API.

* gtestframework.h, gtestframework.c: added test message API and convenience
API to send test messages about bug URLs.

svn path=/trunk/; revision=5906
2007-11-20 15:00:56 +00:00
Tim Janik
a0409304dc Added API to access test framework configuration.
* gtestframework.h, gtestframework.c: export testing configuration to test
programs with g_test_quick(), g_test_perf(), g_test_verbose(), g_test_quiet().

svn path=/trunk/; revision=5905
2007-11-20 15:00:54 +00:00
Tim Janik
a46a52941b gtester: implemented logic to handle failing tests, self tests, and validate XML reports.
* gtester.c: terminate when tests failed. keep XML valid when test cases fail.
restart test binaries when tests fail, resuming after the last processed test.
support --gtester-selftest to run gtester itself as test program.
support --test-arg=<arg> to pass args along to test programs. added
main_selftest() which does a simplistic fixture test. fail if exit
code of test programs is not 0.

* gtestframework.h: added G_TEST_LOG_SKIP_CASE test log message type.

* gtestframework.c: support --GTestSkipCount=<n> to skip a number of tests.

* tests/Makefile.am: added test-report: for demonstration purposes.
added gtester-xmllint-check: and hooked it up into check:, this rule calls
gtester as test program, running it's selftest, and then uses xmllint to
validate the generate XML test log file.

svn path=/trunk/; revision=5904
2007-11-20 15:00:53 +00:00
Tim Janik
f347900eaf gtester: implemented XML logging.
* glib/gtester.c: log test messages to XML output file. beautified normal test
result output.

* glib/gtestframework.c: fixed GTimer leak.

* glib/tests/Makefile.am: start gtester with --verbose.

svn path=/trunk/; revision=5903
2007-11-20 15:00:51 +00:00
Tim Janik
6bc38c46e7 tests/Makefile.am: execute test programs with gtester, add test: to check:
svn path=/trunk/; revision=5902
2007-11-20 15:00:50 +00:00
Tim Janik
f843b379d0 Fixed PLT symbol exports for gtestframework.h.
* glib/glib.symbols: added all exported gtestframework.h symbols.

* glib/gtestframework.c: include galias.h, galiasdef.c, define __G_TESTFRAMEWORK_C__.

svn path=/trunk/; revision=5901
2007-11-20 15:00:48 +00:00
Tim Janik
2b7dbd9aab glib/gtester.c: fixed debugging flag.
svn path=/trunk/; revision=5900
2007-11-20 15:00:47 +00:00
Tim Janik
bca1fe406e fixed bogus unistd.h include.
svn path=/trunk/; revision=5899
2007-11-20 15:00:46 +00:00
Tim Janik
22ac72234a Implemented test log IPC.
* gtester.c: read and decode log messages from test binary child processes.
fixed GIOChannel and child watch handling to process all messages and avoid
hangs. pass --verbose and --quiet on to children, default to --quiet.

* gtestframework.h: export g_test_log_type_name().

* gtestframework.c: send test log to --GTestLogFD=<fd> if given, removed
bogus -o-option.

svn path=/trunk/; revision=5898
2007-11-20 15:00:45 +00:00
Tim Janik
add119f8e1 gtester.c: support test case listing through gtester.
svn path=/trunk/; revision=5897
2007-11-20 15:00:44 +00:00
Tim Janik
a7dc2ea272 gtestframework.c: fixed testpath matches for automatic root suite.
svn path=/trunk/; revision=5896
2007-11-20 15:00:43 +00:00
Tim Janik
d0709d04cb gtester.c: adapted to become a rudimentary test binary launcher.
* gtester.c: increased read buffer size to match common unix pipe buffer size.
added argument parsing and usage. changed io handling to capture and replicate
stdout. fixed io handlers to be cleaned up when the child process exits (catch
G_IO_ERR | G_IO_HUP). we now use pending/iteration instead of a main loop
structure, to keep running until the child process exits and all io has been
processed. launch the test binaries given on the command line. don't quit when
a child couldn't be launched but --keep-going was specified.

svn path=/trunk/; revision=5895
2007-11-20 15:00:41 +00:00
Tim Janik
39cf400cdf Integrated gtester program into build process.
* Makefile.am: build and install gtester binary.

* gtester.c: fixed up coding style and removed hard wired test coded.

svn path=/trunk/; revision=5894
2007-11-20 15:00:40 +00:00
Tim Janik
bf51c15b89 glib/gtester.c:Small -Wall fix
svn path=/trunk/; revision=5893
2007-11-20 15:00:39 +00:00
Tim Janik
26988f5776 glib/gtester.c:Implemented nonblocking reading properly now
svn path=/trunk/; revision=5892
2007-11-20 15:00:38 +00:00
Tim Janik
a09ee4dc20 glib/gtester.c:Quit the application when the output is parsed completely, not just the process finished
svn path=/trunk/; revision=5891
2007-11-20 15:00:37 +00:00
Tim Janik
dce1a63bf4 glib/gtester.c:Read the output of the child process
svn path=/trunk/; revision=5890
2007-11-20 15:00:36 +00:00
Tim Janik
e413112683 glib/gtester.c:Use g_spawn_async_with_pipes()
svn path=/trunk/; revision=5889
2007-11-20 15:00:35 +00:00
Tim Janik
0217653b80 glib/gtester.c:Spawn a process async and quit gtester after the child process exited
svn path=/trunk/; revision=5888
2007-11-20 15:00:34 +00:00
Tim Janik
66bef13e6f glib/gtester.c:Added a first revision of gtester
svn path=/trunk/; revision=5887
2007-11-20 15:00:33 +00:00
Tim Janik
25053dc518 Implemented test log serialization.
* glib/gtestframework.h: added g_test_log*() API.

* glib/gtestframework.c: implement test log serialization.

svn path=/trunk/; revision=5886
2007-11-20 15:00:32 +00:00
Tim Janik
e3c66f03e0 Implemented test logging basics.
* glib/gtestframework.c: added --debug-log and --verbose, implemented
test information logging.

* testing.c: test g_test_maximized_result() and g_test_minimized_result().

svn path=/trunk/; revision=5885
2007-11-20 15:00:31 +00:00
Tim Janik
6145aaca50 Implemented g_test_timer*().
* gtestframework.c: implemented g_test_timer*().

* tests/testing.c: added a g_test_timer*() test.

svn path=/trunk/; revision=5884
2007-11-20 15:00:30 +00:00
Tim Janik
ba166c0081 Implemented support for testpaths.
* gtestframework.c: implemented g_test_add_vtable() and g_test_add_func().

* tests/testing.c: use g_test_add() and g_test_add_func() to majorly simplify main().

svn path=/trunk/; revision=5883
2007-11-20 15:00:29 +00:00
Tim Janik
b2a4c8bae2 testing.c: added tests for the g_test_rand*() API.
svn path=/trunk/; revision=5882
2007-11-20 15:00:28 +00:00
Tim Janik
e47c4253f9 Implemented g_test_rand*().
* gtestframework.h: fixed g_assert_cmp*() to evaluate arguments only once.
added g_assert_cmpuint(). completed g_test_rand*() to cover bits, ints,
doubles and ranges.

* gtestframework.c: fixed "--seed" option and implemented g_test_rand*().

svn path=/trunk/; revision=5881
2007-11-20 15:00:27 +00:00
Tim Janik
fcf30698fe testing.c: added tests for g_assert_cmphex() and forked test traps.
svn path=/trunk/; revision=5880
2007-11-20 15:00:26 +00:00
Tim Janik
f1d751b76e Implemented g_test_trap_fork() API.
* gtestframework.h: added g_assert_cmphex(). reworked g_test_trap*() API.

* gtestframework.c: implemented g_test_trap_fork() API.

svn path=/trunk/; revision=5879
2007-11-20 15:00:25 +00:00
Tim Janik
ca1c42405e that match a given test path. (g_test_run_suite): run suite only if it
* glib/gtestframework.c:

that match a given test path.
(g_test_run_suite): run suite only if it matches the existing test paths.

* glib/tests/testing.c: minor rename.

svn path=/trunk/; revision=5878
2007-11-20 15:00:24 +00:00
Tim Janik
cc3bf40d26 GTest framework started.
* glib/gtestframework.h: testing framework API as proposed on gtk-devel-list.
includes elaborate assertions, performance report functions, test traps,
test timer, test random numbers, teardoiwn garbage collection functions
and general test case / test suite management APIs.

* glib/gtestframework.c: first test framework implementation. already covers
some test suite management APIs and assertion message implementations.

* glib/tests/testing.c: test program for the testing framework.

* glib/tests/Makefile.am: complie testing.c as test. run all tests as part of
make test:.

svn path=/trunk/; revision=5877
2007-11-20 15:00:23 +00:00
Tim Janik
edfef23665 glib/Makefile.am: build tests/ subdir after building libglib.
svn path=/trunk/; revision=5876
2007-11-20 15:00:21 +00:00
Tim Janik
78373b68b9 Fixed up internal 'g_test*' names.
* refcount/signals.c:
* refcount/objects.c:
* refcount/objects2.c:
* refcount/closures.c:
* refcount/properties.c:
* refcount/properties2.c: changed namespace prefix from g_test_* to my_test_*
to not clash with newly introduced g_test* API in glib.

svn path=/trunk/; revision=5875
2007-11-20 15:00:20 +00:00
Tim Janik
f0187b0a1b Added gtestframework.[hc] and glib/tests/.
svn path=/trunk/; revision=5874
2007-11-20 15:00:19 +00:00
Sven Neumann
d07f85e11e use g_strconcat() instead of g_strjoin() to concatenate two strings.
2007-11-20  Sven Neumann  <sven@gimp.org>

	* glib/gerror.c (g_error_add_prefix): use g_strconcat() instead of
	g_strjoin() to concatenate two strings.

svn path=/trunk/; revision=5873
2007-11-20 10:46:15 +00:00
Priit Laes
3bbc6f8fe3 Translation updated by Ivar Smolin.
2007-11-19  Priit Laes  <plaes@svn.gnome.org>

	* et.po: Translation updated by Ivar Smolin.

svn path=/trunk/; revision=5872
2007-11-19 15:51:48 +00:00
Marco Barisione
cd238e4869 Forgot to say that the last commit fixed bug #498113 (Kouhei Sutou)
svn path=/trunk/; revision=5870
2007-11-19 14:08:20 +00:00
Marco Barisione
9f86f44826 Pass an unsigned long instead of an int to pcre_fullinfo() to avoid
2007-11-19  Marco Barisione  <marco@barisione.org>

	* glib/gregex.c: Pass an unsigned long instead of an int to
	pcre_fullinfo() to avoid problems on 64-bit systems

svn path=/trunk/; revision=5869
2007-11-19 14:06:18 +00:00
Marco Barisione
d887ff42eb When the compilation of a pattern fails in the error message use the
2007-11-19  Marco Barisione  <marco@barisione.org>

	* glib/gregex.c: When the compilation of a pattern fails in the error
	message use the character offset and not the byte offset.

svn path=/trunk/; revision=5867
2007-11-19 11:27:43 +00:00
10:30:33 Tim Janik
c8de81804c updated version number to 2.15.0 for development.
2007-11-19 10:30:33  Tim Janik  <timj@imendio.com>

        * configure.in: updated version number to 2.15.0 for development.



svn path=/trunk/; revision=5866
2007-11-19 09:40:49 +00:00
Matthias Clasen
5b918f8ddc Update the example to demonstrate error handling. (#497033, Matti Katila)
2007-11-18  Matthias Clasen <mclasen@redhat.com>

        * glib/tmpl/option.sgml: Update the example to demonstrate
        error handling.  (#497033, Matti Katila)



svn path=/trunk/; revision=5865
2007-11-19 03:50:16 +00:00
Matthias Clasen
29a0692575 Documentation improvements. (#496518, Stefan Schulze Frielinghaus)
2007-11-18  Matthias Clasen  <mclasen@redhat.com>

        * glib/gbase64.c: Documentation improvements.  (#496518,
        Stefan Schulze Frielinghaus)


svn path=/trunk/; revision=5864
2007-11-19 03:39:37 +00:00
Jorge Gonzalez Gonzalez
677f57807f Updated Spanish translation
svn path=/trunk/; revision=5863
2007-11-18 21:36:23 +00:00
Matej Urbančič
e0fda82c80 Updated Slovenian translation
svn path=/trunk/; revision=5862
2007-11-18 18:51:24 +00:00
Matthias Clasen
79668cdf02 Check whether assembler supports numerical local labels.
2007-11-18  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Check whether assembler supports numerical local
        labels.

        * glib/gatomic.c: Fix powerpc implementation of atomic ops for
        platforms where the assembler doesn't support numerical local
        labels.  (#445362)


svn path=/trunk/; revision=5861
2007-11-18 17:42:59 +00:00
Ryan Lortie
1e2c77ecbc new flag G_MARKUP_PREFIX_ERROR_POSITION to cause the parser to prepend
006-11-15  Ryan Lortie  <desrt@desrt.ca>

        * docs/reference/glib/tmpl/markup.sgml:
        * glib/gmarkup.h:
        * glib/gmarkup.c: new flag G_MARKUP_PREFIX_ERROR_POSITION to cause the
        parser to prepend location information (ie: "Error on line %d, char
        %d:") to errors generated by the GMarkupParser callbacks.

        Closes #496046.

svn path=/trunk/; revision=5860
2007-11-16 03:36:51 +00:00
Ryan Lortie
f2a5aa6700 new functions g_prefix_error and g_propagate_prefixed_error.
2006-11-15  Ryan Lortie  <desrt@desrt.ca>

        * docs/reference/glib/glib-sections.txt:
        * glib/glib.symbols:
        * glib/gerror.h:
        * glib/gerror.c: new functions g_prefix_error and
        g_propagate_prefixed_error.


svn path=/trunk/; revision=5859
2007-11-16 03:05:45 +00:00
Matej Urbančič
2eca1b529f Updated Slovenian translation
svn path=/trunk/; revision=5858
2007-11-13 13:43:29 +00:00
Cody Russell
515f42c9ed Documentation fixes. Recommend macro type names such as
2007-11-13  Cody Russell  <bratsche@gnome.org>

        * docs/reference/gobject/gobject-docs.sgml:
        * docs/reference/gobject/tut_gsignal.xml:
        * docs/reference/gobject/tut_gtype.xml:
        * docs/reference/gobject/tut_intro.xml:
        * docs/reference/gobject/tut_tools.xml:
        * docs/reference/gobject/tut_howto.xml:
        * docs/reference/gobject/tut_gobject.xml: Documentation fixes.
        Recommend macro type names such as NAUTILUS_TYPE_WINDOW (not
        NAUTILUS_WINDOW_TYPE).  Fixed text which erroneously stated that 
        superclass initializers don't run when an object is 
        instantiated.  Fixed numerous spelling mistakes.  Minor grammar 
        edits. (#490637, Adam Dingle)


svn path=/trunk/; revision=5857
2007-11-13 07:10:42 +00:00